!function (t) {
    function e(n) {
        if (i[n])return i[n].exports;
        var a = i[n] = {exports: {}, id: n, loaded: !1};
        return t[n].call(a.exports, a, a.exports, e), a.loaded = !0, a.exports
    }

    var i = {};
    return e.m = t, e.c = i, e.p = "", e(0)
}([function (t, e, i) {
    "use strict";
    window.txv = window.txv || {}, txv.tips = i(1), i(2), i(10), i(16), i(24)(), i(25), i(26), i(27), i(28), i(29), i(32), i(33), i(34), i(35), i(36), i(42), i(44), i(45), i(49), i(52)(), i(54), i(56), i(57), i(86), i(94), i(95), i(96), i(103), i(107), i(109), i(110), i(111), i(112), i(113), i(118);
    var n = i(119);
    t.exports = n("tv", {
        data: function () {
            return {}
        }, ready: function () {
        }, methods: {}
    })
}, function (t, e) {
    function i(t, e) {
        clearTimeout(s), this.config = $.extend({}, a, t);
        var i, n = "", o = this;
        this.config.useFloat ? (n = o.buildFloat(), s = setTimeout(o.removeTips, 1e3 * this.config.staySecond)) : (i = '<div class="x_modal" id="ipop"> <!--[if IE]><iframe src="about:blank" frameborder="0" class="x_iframe_mask"></iframe><![endif]--><div class="x_modal_bd">{body}</div><div class="x_modal_ft"> {buttons}</div></div>', $.each(["buildHeader", "buildIcon", "buildBody"], function (t, e) {
                n += o[e]()
            }), n = i.replace("{body}", n).replace("{buttons}", this.buildBtn())), $("body").append(n), this.config.useMask && r(), txv.Message.emit(txv.EventList.tipsshow, !0), this.bindEvent(e), d()
    }

    var n = {Warning: 1, Message: 2}, a = {
        useFloat: !1,
        tipsType: n.Message,
        title: "这是标题",
        desc: "",
        useMask: !0,
        staySecond: 3,
        remindText: "",
        buttons: []
    }, o = {1: "&#xe602;", 2: "&#xe600;", x: "&#xe601;"}, s = null, r = function () {
        0 == $("#mask_layer").length ? $("body").append('<div id="mask_layer" class="mask_layer"></div>') : $("#mask_layer").show()
    }, c = function () {
        $("#mask_layer").hide()
    }, l = function () {
        if (0 == $("link[href*='x_dialog.css']").length) {
            var t = '<link rel="stylesheet" href="//vm.gtimg.cn/tencentvideo/vstyle/web/common/style/x_dialog.css?v=20160506&max_age=86400"/>';
            $("body").append(t)
        }
    }, d = function (t) {
        var e = t || $("#ipop"), i = e.find(">iframe");
        e.css({
            position: "fixed",
            marginTop: "-" + e.outerHeight() / 2 + "px",
            zIndex: 10001
        }), i.length && i.css({
            height: e.outerHeight(),
            position: "absolute",
            zIndex: 100,
            left: 0,
            top: 0,
            border: "none"
        }).next().css({position: "relative", zIndex: 101})
    };
    l(), i.prototype = {
        bindEvent: function (t) {
            var e = $("#ipop"), i = this;
            e.on("click", "._x_close,._x_cancel", function () {
                t.reject(), i.removeTips()
            }).on("click", "._x_ok", function () {
                var n = e.find("._x_inp_check").prop("checked");
                t.resolve({checked: n}), i.removeTips()
            })
        }, removeTips: function () {
            $("#ipop").remove(), c(), txv.Message.emit(txv.EventList.tipsshow, !1)
        }, buildHeader: function () {
            return '<a href="javascript:;" class="x_close _x_close" title="关闭"><i class="x_iconfont x_icon_close">&#xe601;</i></a>'
        }, buildIcon: function () {
            if (this.config.useFloat)return "";
            var t = this.config.tipsType, e = "";
            switch (t) {
                case n.Warning:
                    e = '<div class="x_icon_line"><i class="x_iconfont x_icon_warning">&#xe600;</i></div>';
                    break;
                case n.Message:
                    e = '<div class="x_icon_line"><i class="x_iconfont x_icon_check">&#xe602;</i></div>'
            }
            return e
        }, buildBody: function () {
            var t = this.config, e = "";
            return t.title && (e = '<h3 class="x_title">' + t.title + "</h3>"), t.desc && (e += '<div class="x_desc">' + t.desc + "</div>"), t.remindText && (e += '<div class="x_desc"><label class="x_label"><input type="checkbox" class="x_inp_check _x_inp_check"><span class="x_text">' + t.remindText + "</span></label></div>"), e
        }, buildBtn: function (t) {
            var t = this.config.buttons, e = "";
            return t && t.length > 0 && (e = t[1] ? '<a class="x_btn _x_cancel" href="javascript:;">' + t[0] + '</a><a class="x_btn x_btn_primary _x_ok" href="javascript:;">' + t[1] + "</a>" : '<a class="x_btn x_btn_primary _x_ok" href="javascript:;">' + t[0] + "</a>"), e
        }, buildFloat: function () {
            var t = '<div class="x_alert" id="ipop"><!--[if IE]><iframe src="about:blank" frameborder="0" class="x_iframe_mask"></iframe><![endif]--><div class="x_alert_bd">{head}{title}{desc}</div></div>', e = '<a href="javascript:;" class="x_close _x_ok" title="关闭"><i class="x_iconfont x_icon_close">&#xe601;</i></a>', i = '<div class="x_title"><i class="x_iconfont x_icon_{tipstype}">{icon}</i>{title}</div>', a = '<div class="x_desc">{desc}</div>';
            return i = i.replace("{title}", this.config.title), i = i.replace("{icon}", o[this.config.tipsType]).replace("{tipstype}", this.config.tipsType == n.Warning ? "warning" : "check"), a = a.replace("{desc}", this.config.desc), t.replace("{head}", e).replace("{title}", i).replace("{desc}", a)
        }
    }, t.exports = {
        showMask: r, hideMask: c, loadCss: l, fixCss: d, FloatWarning: function (t) {
            var e = $.Deferred();
            new i($.extend(t, {useFloat: !0, tipsType: n.Warning}), e);
            return e
        }, FloatMsg: function (t) {
            var e = $.Deferred();
            new i($.extend(t, {useFloat: !0, tipsType: n.Message}), e);
            return e
        }, Msg: function (t) {
            var e = $.Deferred();
            new i($.extend(t, {useFloat: !1, tipsType: n.Message}), e);
            return e
        }, Warning: function (t) {
            var e = $.Deferred();
            new i($.extend(t, {useFloat: !1, tipsType: n.Warning}), e);
            return e
        }
    }
}, function (t, e, i) {
    i(3), i(5), i(6);
    for (var n = document.URL, a = ["//v.qq.com/x/cover/", "//v.qq.com/x/page/", "//v.qq.com/x/boke/page"], o = 0; o < a.length; o++) {
        var s = a[o];
        if (n.indexOf(s) != -1) {
            i(7), i(8);
            break
        }
    }
}, function (t, e, i) {
    var n = window.PageMsg;
    i(4);
    var a = !1, o = !0, s = !1, r = !1, c = {
        isShowing: !1,
        leftOnShow: null,
        topOnSshow: null
    }, l = {db_key_mini_player_close: "mini_play_close"}, d = "";
    n.on("tvp-winfullscreen", function (t) {
        a = !!t
    }), n.on("vidChanged", function () {
        s = !1
    });
    var p = {
        isBrowserSupport: function () {
            if (txv.ua.ie < 9 || txv.ua.isiPad)return !1;
            if (document.URL.indexOf("//v.qq.com/x/") == -1 && !txv.util.getUrlParam("debug"))return !1;
            try {
                return localStorage.setItem("test", "1"), "1" == localStorage.getItem("test") && (localStorage.removeItem("test"), !0)
            } catch (t) {
                return !1
            }
        }, shouldShowScrollPlayer: function () {
            if (p.isNeverShow())return !1;
            var t = $(".container_player"), e = t.offset().top + t.height(), i = $(window).scrollTop();
            return o || i <= e && (o = !0), r && o && !a && !p.isNeverShow() && i > e
        }, init: function () {
            if (p.isBrowserSupport()) {
                n.on("tvp-ready", function () {
                    r = !0
                }), n.on("tvp-adStart", function () {
                    if (s = !0, p.shouldShowScrollPlayer()) {
                        var t = "mod_player", e = $("#" + t);
                        e.addClass("mod_player_float_idle")
                    }
                }), n.on("tvp-adEnd", function () {
                    s = !1;
                    var t = "mod_player", e = $("#" + t);
                    e.removeClass("mod_player_float_idle")
                }), $(window).scroll(function () {
                    return p.isNeverShow() && p.addRecoverBtn(!0), s ? void(p.isInFirstView() && p.hideScrollPlayer()) : void(p.shouldShowScrollPlayer() ? p.showScrollPlayer() : p.hideScrollPlayer())
                });
                var t = $("#mod_scrollplay_close");
                t.off("click").on("click", function () {
                    p.hideScrollPlayer(), o = !1;
                    var t = $("#never_show");
                    t.hasClass("checked") ? (localStorage.setItem(l.db_key_mini_player_close, "1"), $("#recovery_mini_player").removeClass("none")) : localStorage.setItem(l.db_key_mini_player_close, "0"), p.isNeverShow() && p.addRecoverBtn(!0)
                }), $("#never_show").click(function () {
                    $(this).toggleClass("checked")
                }), p.addRecoverBtn()
            }
        }, isInFirstView: function () {
            var t = $(".container_player"), e = t.offset().top + t.height(), i = $(window).scrollTop();
            return i <= e
        }, isNeverShow: function () {
            return 1 == localStorage.getItem(l.db_key_mini_player_close)
        }, showScrollPlayer: function () {
            c.isShowing || this.do_show()
        }, hideScrollPlayer: function () {
            if (c.isShowing) {
                c.isShowing = !1, this.setAtNormal();
                var t = "mod_player", e = $("#" + t);
                c.lastLeft = e.css("left"), c.lastRight = e.css("right"), c.lastTop = e.css("top"), e.removeClass("mod_player_float"), d = e.get(0).style.cssText, e.get(0).style.cssText = "", e.off("mousedown")
            }
        }, addRecoverBtn: function (t) {
            if (0 === $("#recovery_mini_player").length) {
                var e = '<a class="menu_item none" title="打开小窗播放" id="recovery_mini_player" href="javascript:;"><i class="iconfont icon_playerfloat_lg"></i><span class="icon_text">小窗播放</span> </a>';
                $("#btn_backtop").before(e)
            }
            t && !p.isInFirstView() ? $("#recovery_mini_player").removeClass("none") : $("#recovery_mini_player").addClass("none");
            var i = $("#recovery_mini_player");
            i.length && "1" !== i.attr("data-click") && i.on("click", function () {
                o = !0, localStorage.setItem(l.db_key_mini_player_close, "0"), $(window).trigger("scroll"), i.addClass("none")
            }).attr("data-click", "1")
        }, setAtNormal: function () {
            n.emit("tvp-setSmallWindowMode", !1)
        }, setAtSmall: function () {
            n.emit("tvp-setSmallWindowMode", !0)
        }, do_show: function () {
            c.isShowing = !0, this.setAtSmall();
            var t = "mod_player", e = $("#" + t), i = {};
            c.lastTop && "auto" != c.lastTop && (i.top = c.lastTop), c.lastLeft && "auto" != c.lastLeft && (i.left = c.lastLeft), c.lastRight && "auto" != c.lastRight && (i.right = c.lastRight), e.addClass("mod_player_float").css(i), e.dragable(), $(".l_qq_com a,.mod_float_box").each(function () {
                var t = $(this), e = t.css("z-index");
                isNaN(e) || (t.attr("_croll_play_index", e), t.css("z-index", 1))
            })
        }
    };
    p.init()
}, function (t, e) {
    !function (t) {
        var e, i, n, a, o, s, r = !1, c = null, l = function (t) {
            var e = 0, i = 0;
            if (!t)var t = window.event;
            return t.pageX || t.pageY ? (e = t.pageX, i = t.pageY) : (t.clientX || t.clientY) && (e = t.clientX + document.body.scrollLeft + document.documentElement.scrollLeft, i = t.clientY + document.body.scrollTop + document.documentElement.scrollTop), {
                x: e,
                y: i
            }
        }, d = function (r) {
            var d = l(r), p = d.x - e, u = d.y - i, _ = a + p, f = n + u;
            _ = _ <= 0 ? 0 : _ >= o ? o : _, f = f <= 0 ? 0 : f >= s ? s : f;
            var v = t("body").width() - c.width() - _;
            c.css("top", f), v < _ ? (c.css("right", v), c.css("left", "auto")) : (c.css("right", "auto"), c.css("left", _))
        };
        t(document).mousemove(function (t) {
            if (r)return d(t), !1
        }), t(document).mouseup(function (t) {
            if (r)return r = !1, !1
        }), t.fn.dragable = function (p) {
            this.css("cursor", "move"), this.bind("mousedown", function (p) {
                p = p || window.event;
                var u;
                if (u = txv.ua.ie || txv.ua.firefox ? p.currentTarget : p.toElement) {
                    r = !0, c = t(this);
                    var _ = l(p);
                    e = _.x, i = _.y, n = this.offsetTop, a = this.offsetLeft, o = t("body").width() - c.width(), s = t(window).height() - c.height(), d(p)
                }
            })
        }
    }($)
}, function (t, e) {
    var i = window.PageMsg;
    i.on("tvp-ready", function () {
        for (var t = [32, 37, 39, 74, 75, 76, 70], e = ["INPUT", "EMBED"], n = 48; n <= 57; n++)t.push(n);
        for (var n = 96; n <= 105; n++)t.push(n);
        $("body").on({
            keydown: function (i) {
                $.inArray(i.which, t) != -1 && $.inArray(i.target.tagName, e) == -1 && i.preventDefault()
            }, keyup: function (n) {
                if ($.inArray(n.which, t) != -1 && $.inArray(n.target.tagName, e) == -1) {
                    n.preventDefault();
                    var a = n.which;
                    if (a >= 48 && a <= 57) {
                        var o = PLAYER.getDuration();
                        i.emit("tvp-seekto", o * ((a - 48) / 10))
                    } else if (a >= 96 && a <= 105) {
                        var o = PLAYER.getDuration();
                        i.emit("tvp-seekto", o * ((a - 96) / 10))
                    } else switch (a) {
                        case 32:
                        case 75:
                            i.emit("tvp-togglePlayPause");
                            break;
                        case 37:
                            i.emit("tvp-seekLeft", 5);
                            break;
                        case 39:
                            i.emit("tvp-seekRight", 5);
                            break;
                        case 70:
                            i.emit("tvp-toggleWindowFullScreen");
                            break;
                        case 74:
                            i.emit("tvp-seekLeft", 10);
                            break;
                        case 76:
                            i.emit("tvp-seekRight", 10)
                    }
                }
            }
        })
    })
}, function (t, e) {
    var i = !0, n = {
        off: function () {
            i = !1, $("body").addClass("page_dark")
        }, on: function () {
            i = !0, $("body").removeClass("page_dark")
        }, callback: function () {
        }
    };
    t.exports = n
}, function (t, e) {
    function i(t) {
        return t ? String(t).replace(/\&amp;/, "&").replace(/\&lt;/, "<").replace(/\&gt;/, ">").replace(/\&#39;/, "'").replace(/\&quot;/, '"') : ""
    }

    var n = window.PageMsg, a = [], o = !1, s = "function" == typeof history.pushState;
    location.protocol + "//" + location.host;
    s ? (n.on("tvp-winfullscreen", function (t) {
            o = !!t, !o && a.length && (history.pushState.apply(history, a), document.title = i(a[0].title), a = [])
        }), n.on("pushstate", function (t) {
            var e = t.title || document.title, n = t.link + (location.href.split("?")[1] ? "?" + location.href.split("?")[1] : "");
            o ? a = [{title: e || document.title}, "", n] : (history.pushState({title: e || document.title}, "", n), document.title = i(e))
        })) : n.on("pushstate", function (t) {
            document.title = i(t.title || document.title)
        })
}, function (t, e, i) {
    var n = i(9), a = window.PageMsg, o = 0;
    window.onpopstate = function (t) {
        if (t && o++ > 0) {
            var e = n.getVidFromUrl(document.URL || document.location.href) || VIDEO_INFO.vid;
            t.state && t.state.title && (document.title = t.state.title), a.emit("playvid", e)
        }
    }
}, function (t, e) {
    var i = {
        getUrlParam: function (t, e) {
            e = e || location.href;
            var i, n = new RegExp("[?&#]" + t + "=([^&#]+)", "gi"), a = e.match(n);
            return a && a.length > 0 ? (i = a[a.length - 1].split("="), i && i.length > 1 ? i[1] : "") : ""
        }, addUrlParam: function (t, e) {
            e = e || document.URL;
            var n = e + "?";
            e.indexOf("?") > -1 && (n = e + "&");
            for (var a in t)if (i.getUrlParam(a, n)) {
                var o = new RegExp("([?&#]" + a + "=)([^&#]+)(.*?)", "i");
                n = n.replace(o, "$1" + t[a] + "$3")
            } else n = n + a + "=" + t[a] + "&";
            var s = n.length, r = n.charAt(s - 1);
            return "?" != r && "&" != r || (n = n.substring(0, s - 1)), n
        }, getVidFromUrl: function (t) {
            t = t || document.URL || document.location.href;
            var e, n = i.getUrlParam("vid", t);
            return n || (e = t.match(/\/\w{15}\/(\w+)\.html/)) && (n = e[1]), n || ((e = t.match(/\/page\/(\w+)\.html/)) ? n = e[1] : (e = t.match(/\/(page|play)\/+(\w{11})\.html/)) && (n = e[2])), n || (e = t.match(/\/boke\/gplay\/\w+_\w+_(\w+)\.html/)) && (n = e[1]), /^[a-zA-Z0-9]+$/.test(n) ? encodeURIComponent(n) : ""
        }, getDefaultVid: function () {
            var t = this.getVidFromUrl();
            if (VIDEO_INFO) t = VIDEO_INFO.sv || VIDEO_INFO.vid; else {
                var e = "mod_videolist", i = $("#" + e).find("li"), n = i.eq(0);
                1 == n.length && (t = n.attr("sv") || n.attr("id") || "")
            }
            return t
        }, getCurUrl: function () {
            return document.URL || document.location.href
        }, reportPV: function (t) {
            var e = "", n = i.getCurUrl(), a = t || this.getVidFromUrl();
            e = COVER_INFO.id ? "/x" + (n.indexOf("/prev/") > 0 ? "/prev/" : "/cover/") + COVER_INFO.id + "/" + (a ? a : "index") + ".html" : n.replace("http://v.qq.com", "").replace("https://v.qq.com", ""), txv.tj2.pv({virtualURL: e}), txv.tj2.virtualpv(["cover/", COVER_INFO.typeid, ".html"].join(""))
        }
    };
    t.exports = i
}, function (t, e, i) {
    var n = window.PageMsg, a = i(11), o = i(12);
    i(14);
    var s = ("function" == typeof history.pushState, $("#video_scroll_wrap").find(".figures_list").eq(0).children().eq(0).outerHeight());
    t.exports = Reve.component("c-video-list", {
        data: {curVid: ""}, ready: function () {
            var t = this;
            if (setTimeout(function () {
                    t.$set("curVid", t.$data.curVid || VIDEO_INFO.vid), t.scrollIntoView(t.$data.curVid || VIDEO_INFO.vid)
                }, 50), setTimeout(function () {
                    a.init()
                }, 50), n.on("vidChanged", function (t, e) {
                    var i = t.vid;
                    i != this.$data.curVid && (this.$set("curVid", i), e || this.scrollIntoView(i))
                }.bind(this)), $(".player_album_title").length) {
                var e = null;
                $(".panel_body .scroll_wrap").scroll(function () {
                    clearTimeout(e), e = setTimeout(function () {
                        $(this).scrollTop() > 100 && (LIST_INFO.vid && LIST_INFO.vid.length > 6 || 6 * s <= $(this).height()) ? $(this).prev().addClass("show") : $(this).prev().removeClass("show")
                    }.bind(this), 300)
                })
            }
            var i = $("#cover_list");
            if (i.size() > 0) {
                var r = [];
                i.find(".list_item").each(function () {
                    r.push($(this).attr("data-cid"))
                }), a.getCovers(r, function (t) {
                    for (var e = 0; e < t.length; e++)if (t[e].fields) {
                        var n = t[e].id, s = i.find("[data-cid='" + n + "']").find(".num"), r = t[e].fields.view_all_count, c = o.formatNum(r);
                        s.size() > 0 && s.html(c), n == COVER_INFO.id && a.sameCover(r)
                    }
                }), i.find(".show_more").click(function () {
                    n.emit("switchSideTo", "columns", !0)
                })
            }
        }, methods: {
            scrollIntoView: function (t) {
                var e = LIST_INFO.vid.indexOf(t);
                e > -1 && (0 != e && n.emit("switchSideTo", $(this.$el).index(), !0), $("#video_scroll_wrap").scrollTop(s * e))
            }, changeToVideo: function (t, e) {
                e && e.preventDefault && e.preventDefault(), e.returnValue = !1, t != this.$data.curVid && (txv.log.log("列表点击，切换vid"), n.emit("vidClick", t))
            }, gotoFirst: function () {
                $("#video_scroll_wrap").scrollTop(0)
            }
        }
    })
}, function (t, e, i) {
    var n = i(12), a = (window.PageMsg, {}), o = !1, s = !1, r = {
        init: function () {
            r.getCovers([COVER_INFO.id], function (t) {
                t.length > 0 && t[0].fields && t[0].fields.view_all_count && $("#mod_cover_playnum").html(n.formatNum(t[0].fields.view_all_count))
            });
            var t = [];
            $("._video_playnum").each(function () {
                t.push($(this).attr("data-id"))
            });
            var e = 30;
            if (t.length > e)for (var i = 0; i < Math.ceil(t.length / e); i++) {
                var a = i * e, o = (i + 1) * e;
                o = o > t.length ? t.length : o, r.getVideos(t.slice(a, o), r.renderVideoPlaynum)
            } else t.length > 0 && r.getVideos(t, r.renderVideoPlaynum)
        }, renderVideoPlaynum: function (t) {
            for (var e = 0; e < t.length; e++)if (t[e].fields) {
                var i = t[e].id, a = $("#" + i).find("._video_playnum"), o = t[e].fields.view_all_count;
                if (0 == a.size())continue;
                a.html(n.formatNum(o)), a.attr("data-fresh", 1)
            }
        }, getVideos: function (t, e) {
            if (t && 0 != t.length) {
                if (o)return void setTimeout(function () {
                    r.getVideos(t, e)
                }, 50);
                for (var i = [], n = [], s = 0, c = t.length; s < c; s++) {
                    var l = t[s];
                    "undefined" != typeof a[l] ? i.push({id: l, fields: {view_all_count: a[l]}}) : n.push(l)
                }
                if (0 == n.length)return void(e && e(i));
                o = !0, $.ajax({
                    url: "//union.video.qq.com/fcgi-bin/data?tid=376&&appid=20001212&appkey=b4789ed0ec69d23a&otype=json",
                    data: {idlist: n.join(",")},
                    dataType: "jsonp"
                }).done(function (t) {
                    if (0 == t.errorno && t.results && t.results.length > 0) {
                        for (var n = t.results, o = 0; o < n.length; o++)n[o].fields && (a[n[o].id] = n[o].fields.view_all_count);
                        var s = t.results;
                        i.length > 0 && (s = i.concat(s)), e && e(s)
                    }
                }).always(function () {
                    o = !1
                })
            }
        }, getCovers: function (t, e) {
            if (t && 0 != t.length) {
                if (s)return void setTimeout(function () {
                    r.getCovers(t, e)
                }, 50);
                for (var i = [], n = [], o = 0, c = t.length; o < c; o++) {
                    var l = t[o];
                    "undefined" != typeof a[l] ? i.push({id: l, fields: {view_all_count: a[l]}}) : n.push(l)
                }
                if (0 == n.length)return void(e && e(i));
                s = !0, $.ajax({
                    url: "//union.video.qq.com/fcgi-bin/data?tid=613&&appid=20001212&appkey=b4789ed0ec69d23a&otype=json",
                    data: {idlist: n.join(",")},
                    dataType: "jsonp"
                }).done(function (t) {
                    if (0 == t.errorno && t.results && t.results.length > 0) {
                        for (var n = t.results, o = 0; o < n.length; o++)n[o].fields && (a[n[o].id] = n[o].fields.view_all_count);
                        var s = t.results;
                        i.length > 0 && (s = i.concat(s)), e && e(s)
                    }
                }).always(function () {
                    s = !1
                })
            }
        }, getCoverDetail: function (t, e) {
            $.ajax({
                url: "//union.video.qq.com/fcgi-bin/data?tid=70&&appid=20001212&appkey=b4789ed0ec69d23a&otype=json",
                data: {idlist: t},
                jsonpCallback: "playnumCoverDetailCb",
                dataType: "jsonp"
            }).done(function (t) {
                0 == t.errorno && t.results && t.results[0] && t.results[0].fields && e && e(t.results[0].fields)
            }).fail(function () {
            })
        }, sameCover: function (t) {
            t = "number" == typeof t && t > 0 ? n.formatNum(t) : 0, $("#mod_cover_playnum").html(t), $("._cover_total").html(t), $("#cover_list").find("[data-cid='" + COVER_INFO.id + "']").find(".num").html(t), $("#mod_column_year").find("[data-cid='" + COVER_INFO.id + "']").find(".num").html(t)
        }
    };
    t.exports = r
}, function (t, e, i) {
    var n = i(13);
    t.exports = {
        outputVideoInfo: function (t, e) {
            return {
                vid: t.vid,
                playStartTime: t.head_time,
                playEndTime: t.tail_time,
                duration: t.duration,
                title: 3 == e ? n.escape(t.vname_title || t.title) : n.escape(t.c_title_output),
                episode: t.episode,
                showBullet: 1 == t.danmu,
                showImageBullet: 1 == t.c_has_adv_danmu,
                openBulletDefault: !!t.danmu_status,
                showMark: t.c_tags_flag,
                isNeedPay: !!+t.drm,
                tryTime: t.trytime,
                preview: this.imgUrl(t.pic160x90),
                isTrailer: t.is_trailer,
                isFull: t.c_full,
                viponly: t.viponly,
                notviponly: t.noviponly,
                series_num: t.series_num,
                series_part_title: t.series_part_title,
                category_map: t.category_map,
                sport_points_name: t.sport_points_name
            }
        }, formatNum: function (t) {
            if (!t)return 0;
            t += "";
            var e = t.split(""), i = (e.shift(), "");
            return t < 1e4 ? t : t >= 1e4 && t < 1e8 ? (t = parseInt(t / 1e3) + "", e = t.split(""), i = e.pop(), e.join("") + "." + (i ? i : "") + "万") : t >= 1e8 ? (t = parseInt(t / 1e7) + "", e = t.split(""), i = e.pop(), e.join("") + "." + (i ? i : "") + "亿") : void 0
        }, splitNum: function (t) {
            for (var e = t + "", i = "", n = e.length, a = 0; n--;)a && a % 3 == 0 && (i = "," + i), a++, i = e[n] + i;
            return i
        }, formatDate: function (t, e) {
            if (!t)return "";
            if ("string" == typeof t && (t = new Date(t.replace(/-/g, "/"))), "Invalid Date" == t.toString())return "";
            e = e || "yyyy-MM-dd";
            var i = {
                "M+": t.getMonth() + 1,
                "d+": t.getDate(),
                "h+": t.getHours(),
                "m+": t.getMinutes(),
                "s+": t.getSeconds(),
                "q+": Math.floor((t.getMonth() + 3) / 3),
                S: t.getMilliseconds()
            };
            /(y+)/.test(e) && (e = e.replace(RegExp.$1, (t.getFullYear() + "").substr(4 - RegExp.$1.length)));
            for (var n in i)new RegExp("(" + n + ")").test(e) && (e = e.replace(RegExp.$1, 1 == RegExp.$1.length ? i[n] : ("00" + i[n]).substr(("" + i[n]).length)));
            return e
        }, strCut: function (t, e, i) {
            if (t = String(t), e -= 0, i = i || "", isNaN(e))return t;
            for (var n = t.length, a = Math.min(Math.floor(e / 2), n), o = t.slice(0, a).replace(/[^\x00-\xFF]/g, "**").length; a < n && o < e; a++)o += 1 + (t.charCodeAt(a) > 255);
            return t.slice(0, o > e ? a - 1 : a) + (a < n ? i : "")
        }, playUrl: function (t, e) {
            var i = "";
            return "string" == typeof t ? 15 == t.length ? (i = "/x/cover/" + t, "string" == typeof e && e && (i += "/" + e), i += ".html") : i = "/x/page/" + t + ".html" : "string" == typeof e && (i += "/x/page/" + e + ".html"), i
        }, detailUrl: function (t) {
            return t && t.length > 0 ? "//v.qq.com/detail/" + t.substr(0, 1) + "/" + t + ".html" : "javascript:;"
        }, searchUrl: function (t, e) {
            if (t && t.length > 0) {
                e = e || "vlist";
                var i = 4;
                return "//v.qq.com/search.html?pagetype=" + i + "&stag=txt.playpage." + e + "&ms_key=" + t
            }
            return ""
        }, showTime: function (t, e) {
            var i = function (t) {
                return t = parseInt(t), t < 10 ? "0" + t : "" + t
            }, n = [];
            return e ? (n.push(i(t / 3600)), n.push(i(t % 3600 / 60))) : n.push(i(t / 60)), n.push(i(t % 60)), n.join(":")
        }, videoCorner: function (t, e) {
            function i(t, e) {
                return t.replace(/\{(\w+)\}/g, function (t, i) {
                    return e[i] || ""
                })
            }

            function n(t, e) {
                for (var i = 0; i < e.length; i++)if (t === e[i])return i;
                return -1
            }

            var a = "", o = '<sup class="{param}">{text}</sup>', s = '<span class="{param}"><em class="mark_inner">{text}</em></span>', r = '<span class="{param}"><em class="mask_txt">{text}</em></span>', c = '<sup class="{param}">{text}</sup>';
            if (e = e || [1, 2, 3, 4], t) {
                if ("string" == typeof t)try {
                    t = JSON.parse(t)
                } catch (l) {
                }
                t.tag_3 && t.tag_3.id > 0 && n(3, e) != -1 && (a += i(r, t.tag_3)), t.tag_4 && t.tag_4.id > 0 && n(4, e) != -1 && (a += i(c, t.tag_4)), t.tag_1 && t.tag_1.id > 0 && n(1, e) != -1 && (a += i(o, t.tag_1)), t.tag_2 && t.tag_2.id > 0 && n(2, e) != -1 && (a += i(s, t.tag_2))
            }
            return a
        }, coverCorner: function (t, e) {
            function i(t, e) {
                return t.replace(/\{(\w+)\}/g, function (t, i) {
                    var n = e[i] || "";
                    return "param2x" == i && (n = e.param || "", n = n && n.replace && n.replace(/\.(\w+)$/, "@2x.$1 2x")), n && n.replace && n.replace(/^http\:/, "")
                })
            }

            function n(t, e) {
                for (var i = 0; i < e.length; i++)if (t === e[i])return i;
                return -1
            }

            var a = "", o = '<sup class="{param}">{text}</sup>', s = '<i class="mark_v"><img src="{param}" srcset="{param2x}" alt="{text}"></i>', r = '<div class="figure_caption"><span class="figure_info">{text}</span></div>', c = '<sup class="{param}">{text}</sup>', l = /\/\/([\w\.]+\/)+(\w+\.\w+)$/;
            if (e = e || [1, 2, 3, 4], t) {
                if ("string" == typeof t)try {
                    t = JSON.parse(t)
                } catch (d) {
                }
                t.tag_3 && t.tag_3.id > 0 && n(3, e) != -1 && (a += i(r, t.tag_3)), t.tag_4 && t.tag_4.id > 0 && n(4, e) != -1 && (a += i(c, t.tag_4)), t.tag_1 && t.tag_1.id > 0 && n(1, e) != -1 && (a += i(o, t.tag_1)), t.tag_2 && t.tag_2.id > 0 && n(2, e) != -1 && l.test(t.tag_2.param) && (a += i(s, t.tag_2))
            }
            return a
        }, playnumIcon: function () {
            return '<i class="icon_sm icon_play_sm"><svg class="svg_icon svg_icon_play_sm" viewBox="0 0 16 16"><path d="M10.83 8.309l-.001.023-4.079 2.539-.005.003-.048.03-.013-.005c-.072.051-.149.1-.245.1-.217 0-.376-.165-.412-.369l-.028-.011V5.461l.009-.005c0-.009-.009-.014-.009-.022 0-.24.197-.435.44-.435.096 0 .174.049.246.101l.032-.017 4.129 2.569v.016a.42.42 0 0 1 .153.318.414.414 0 0 1-.169.323zm3.493 2.605a.986.986 0 0 1-.948.742 1 1 0 0 1-1-1 .98.98 0 0 1 .094-.412l-.019-.01c.34-.675.549-1.427.549-2.235a5 5 0 1 0-5 5c.767 0 1.484-.186 2.133-.494l.014.03a.968.968 0 0 1 .416-.098 1 1 0 0 1 1 1 .986.986 0 0 1-.77.954 6.897 6.897 0 0 1-2.793.608 7 7 0 1 1 7-7c0 1.048-.26 2.025-.676 2.915z"></path></svg></i>'
        }, hasRight: function (t) {
            if (t && t.length > 0)for (var e = 0; e < t.length; e++)if ("2" == t[e] || 2 == t[e])return !0;
            return !1
        }, zhengpianCounts: function (t, e) {
            var i = [10139, 10150, 10416, 10470, 10471, 10711, 10714, 10720, 10723, 10726, 10001, 10002, 10003, 10010, 10011, 10012, 10472, 10797, 10994, 10999, 10890], n = function (t) {
                if (!t || 0 == t.length)return 0;
                for (var e = 0, n = 0; n < t.length; n++)for (var a = t[n], o = 0; o < i.length; o++)if (a && a.category_map && a.category_map.length > 0 && a.category_map[0] == i[o]) {
                    e++;
                    break
                }
                return e
            }, a = 0;
            if (t.videolist && ([2, 3].indexOf(t.type) > -1 ? a += n(t.videolist) : (a += n(t.videolist.full), a += n(t.videolist.aspect))), a += n(t.cliplist), e) {
                var o = t.video_ids.length + t.clips_ids.length;
                return o - a
            }
            return a
        }, metaTitle: function (t) {
            if (3 == t.type)return t.video.title;
            if (2 == t.type) {
                if (t.video.category_map && t.video.category_map.length > 0 && [10470, 10471, 10994, 10999].indexOf(t.video.category_map[0]) > -1) {
                    var e = "";
                    return e = 0 == t.video.c_title_output.indexOf("第") ? t.video.c_title_output : "第" + t.video.c_title_output + "集", t.title + " " + e
                }
                return t.video.c_title_output + " - " + t.title
            }
            if (1 == t.type)return t.video.category_map && t.video.category_map.length > 0 && [10139, 10150, 10416, 10834, 10890].indexOf(t.video.category_map[0]) > -1 ? t.video.c_title_output : t.video.c_title_output + " - " + t.title;
            var i = t.video.c_title_output;
            return t.column && t.column.column_id > 0 && 0 == t.column.hide_flag ? i + " - " + t.column.title : i + " - " + t.title
        }, metaDesc: function (t) {
            if (1 == t.type || 2 == t.type || 3 == t.type || 9 == t.type)return t.description || "";
            if (10 == t.type)return t.column && t.column.column_id > 0 && 0 == t.column.hide_flag ? t.column.description || "" : t.description || "";
            var e = t.title || "";
            return t.second_title && t.second_title.length > 0 ? e += ": " + t.second_title : t.video.c_title_output && t.video.c_title_output.length > 0 && (e += ": " + t.video.c_title_output), e
        }, metaKeys: function (t) {
            var e = [];
            if (1 == t.type || 2 == t.type || 3 == t.type) {
                if (t.alias && t.alias.length > 0 && (e = e.concat(t.alias)), t.leading_actor && t.leading_actor.length > 0)for (var i = t.leading_actor.length > 3 ? 3 : t.leading_actor.length, n = 0; n < i; n++)e.push(t.leading_actor[n])
            } else if (t.column && t.column.column_id > 0 && 0 == t.column.hide_flag && e.push(t.column.title), 10 == t.type) {
                if (t.guests && t.guests.length > 0)for (var i = t.guests.length > 3 ? 3 : t.guests.length, n = 0; n < i; n++)e.push(t.guests[n])
            } else if (9 == t.type) {
                if (t.tag && t.tag.length > 0)for (var i = t.tag.length > 3 ? 3 : t.tag.length, n = 0; n < i; n++)e.push(t.tag[n])
            } else t.urlHasVid ? t.video.pioneer_tag && t.video.pioneer_tag.length > 0 ? e.push(t.video.pioneer_tag.replace("+", ",")) : t.keyword && t.keyword.length > 0 && (e = e.concat(t.keyword)) : t.keyword && t.keyword.length > 0 ? e = e.concat(t.keyword) : t.video.pioneer_tag && t.video.pioneer_tag.length > 0 && e.push(t.video.pioneer_tag.replace("+", ","));
            return e.push(t.type_name), e.join(",")
        }, realLength: function (t) {
            if (t) {
                for (var e = 0, i = 0; i < t.length; i++)t.charAt(i).match(/[\x00-\x07]/) || (e += t.charAt(i).match(/[\x07-\xFF]/) ? 1 : 2);
                return e
            }
        }, cartoonListTitle: function (t, e) {
            var i = t.vname_title || t.title || "", n = t.series_part_title || (t.series_name || "") + "第" + +t.episode + "集";
            switch (+e.list_show_style) {
                case 1530990:
                    return +t.episode;
                case 1530992:
                    return n;
                case 1532404:
                    return ["第" + +t.episode + "集", i].join(" ");
                case 1532405:
                    return [n, i].join(" ");
                case 1530991:
                    return i;
                default:
                    return i
            }
        }, cartoonTitle: function (t, e) {
            var i = t.vname_title || t.title || "", n = t.series_part_title || (t.series_name || "") + "第" + +t.episode + "集", a = !1;
            t.category_map.indexOf("正片") != -1 && (a = !0);
            var o;
            switch (+e.list_show_style) {
                case 1530990:
                    o = ["第" + +t.episode + "集"], a && (a = e.title);
                    break;
                case 1530992:
                    o = [n], a && (a = t.series_name);
                    break;
                case 1532404:
                    o = ["第" + +t.episode + "集", i], a && (a = e.title);
                    break;
                case 1532405:
                    o = [n, i], a && (a = t.series_name);
                    break;
                case 1530991:
                    o = [i], a && (a = e.title);
                    break;
                default:
                    o = [i], a && (a = e.title)
            }
            return a && o.unshift(a), o.join(" ")
        }, episodeTitle: function (t, e) {
            var i = +(e.category_map ? e.category_map[0] : 0);
            if ([10470, 10471, 10994, 10999].indexOf(i) != -1) {
                var n = e.c_title_output || "", a = parseInt(n);
                return 0 == n.indexOf("第") || isNaN(a) || (n = "第" + a + "集"), ([10470, 10471, 10994, 10999].indexOf(i) != -1 ? t.title + " " : "") + n
            }
            return ([10470, 10471, 10994, 10999].indexOf(i) != -1 ? t.title + " " : "") + e.c_title_output
        }, peopleHref: function (t, e) {
            return e ? "http://v.qq.com/x/star/" + e : "http://v.qq.com/search.html?pagetype=3&stag=txt.playpage.vppdesc&ms_key=" + encodeURIComponent(t)
        }, formatPeople: function (t, e) {
            function i(t, e) {
                if (!(t && e && t.length && e.length && t.length == e.length))return [];
                for (var i = [], n = 0; n < t.length; n++)i.push({id: t[n], name: e[n]});
                return i
            }

            if (!t || !e || !e[0])return [];
            for (var n = {}, a = [], o = 0; o < e.length; o++)for (var s = e[o], r = i(t[s.id], t[s.name]), c = 0; c < r.length; c++) {
                var s = r[c];
                s.id && !n[s.id] && (a.push(s), n[s.id] = !0)
            }
            return a
        }, imgUrl: function (t) {
            return t && t.replace(/^http\:/, "")
        }, escape: function (t) {
            return t ? String(t).replace(/([&<>'"])/g, "\\$1").replace(/[\n\r\s\t\v]/g, "") : ""
        }, coverPic: function (t, e, i) {
            var n = "//i.gtimg.cn/qqlive/img/jpgcache/files/qqvideo/";
            if ("string" == typeof t) {
                var a = [];
                e && a.push(e), i = i || "", i.length > 0 && (i = "_" + i), a = a.concat([t.charAt(0), t + i + ".jpg"]), n += a.join("/")
            }
            return n
        }, extend: function () {
            return n.extend.apply(n, arguments)
        }, chnSlice: function (t, e) {
            if (t) {
                for (var i = [], n = 0, a = 0; a < t.length && (t.charAt(a).match(/[\x00-\x07]/) || (n += t.charAt(a).match(/[\x07-\xFF]/) ? 1 : 2), i.push(t.charAt(a)), !(n >= e)); a++);
                return i.join("")
            }
        }
    }
}, function (t, e) {
    "use strict";
    function i(t, e) {
        return t && t.hasOwnProperty && t.hasOwnProperty(e)
    }

    function n() {
        var t;
        return t = function () {
            setTimeout.apply(window, arguments)
        }
    }

    var a = void 0, o = {
        escape: function (t) {
            return t ? String(t).replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/'/g, "&#39;").replace(/"/g, "&quot;") : ""
        }, type: function (t) {
            if (null === t)return "null";
            if (t === a)return "undefined";
            var e = /\[object (\w+)\]/.exec(Object.prototype.toString.call(t));
            return e ? e[1].toLowerCase() : ""
        }, keys: function (t) {
            var e = [];
            return t ? Object.keys ? Object.keys(t) : (this.objEach(t, function (t) {
                        e.push(t)
                    }), e) : e
        }, bind: function (t, e) {
            return t.bind ? t.bind(e) : function () {
                    return t.apply(e, arguments)
                }
        }, extend: function (t) {
            if ("object" != this.type(t) && "function" != this.type(t))return t;
            for (var e, n, a = 1, o = arguments.length; a < o; a++) {
                e = arguments[a];
                for (n in e)i(e, n) && (t[n] = e[n])
            }
            return t
        }, trim: function (t) {
            return t.trim ? t.trim() : t.replace(/^\s+|\s+$/gm, "")
        }, indexOf: function (t, e) {
            if (t.indexOf)return t.indexOf(e);
            var i = -1;
            return o.some(t, function (t, n) {
                if (t === e)return i = n, !0
            }), i
        }, forEach: function (t, e) {
            if (t.forEach)return t.forEach(e);
            for (var i = t.length, n = 0; n < i; n++)e(t[n], n);
            return t
        }, some: function (t, e) {
            if (t.some)return t.some(e);
            for (var i = t.length, n = !1, a = 0; a < i; a++)if (e(t[a], a)) {
                n = !0;
                break
            }
            return n
        }, map: function (t, e) {
            if (t.map)return t.map(e);
            for (var i = t.length, n = [], a = 0; a < i; a++)n.push(e(t[a], a));
            return n
        }, objEach: function (t, e) {
            if (t)for (var n in t)if (i(t, n) && e(n, t[n]) === !1)break
        }, reduce: function (t, e) {
            if ("function" != o.type(e))throw new TypeError("Array.prototype.reduce callback must be a function");
            var i = t.length;
            if (0 === i && 2 === arguments.length)throw new TypeError("reduce of empty array with no initial value");
            var n, a = 0;
            if (arguments.length >= 3) n = arguments[2]; else for (; ;) {
                if (a in t) {
                    n = t[a++];
                    break
                }
                if (++a >= i)throw new TypeError("reduceRight of empty array with no initial value")
            }
            for (; a < i; a++)n = e(n, t[a], a, t);
            return n
        }, filter: function (t, e, i) {
            if (t.filter)return t.filter(e);
            for (var n = t.length, a = [], o = 0; o < n; o++) {
                var s = t[o];
                e.call(i, s, o, t) && a.push(s)
            }
            return a
        }, nextTick: n(), lock: function (t) {
            var e;
            return function () {
                if (!e) {
                    e = !0;
                    var i = [].slice.call(arguments, 0);
                    i.unshift(function () {
                        e = !1
                    }), t.apply(this, i)
                }
            }
        }, queue: function (t, e) {
            function i() {
                var t = n.shift();
                if (!t)return void(a = e);
                a--;
                var s = t[0], r = t[1], c = t[2];
                c.unshift(function () {
                    a++, i.apply(this, arguments)
                }), o.nextTick(function () {
                    return s.apply(r, c)
                })
            }

            e = e || 1;
            var n = [], a = e;
            return function () {
                if (n.push([t, this, [].slice.call(arguments, 0)]), a)return i()
            }
        }, delegator: function (t) {
            var e, i = [];
            return function (n) {
                return e ? i.push(n) : (e = !0, void t.call(this, function () {
                        e = !1;
                        var t = this, a = arguments;
                        n && n.apply(t, a), o.forEach(i, function (e) {
                            e && e.apply(t, a)
                        })
                    }))
            }
        }, once: function (t) {
            var e, i = arguments;
            return function () {
                if (!e && t)return e = !0, t.apply(i.length >= 2 ? i[1] : null, arguments)
            }
        }
    };
    t.exports = o
}, function (t, e, i) {
    var n = i(15), a = window.PageMsg, o = VIDEO_INFO.vid, s = "#mod_follow_act", r = $(s), c = "btn_collected", l = "span", d = null, p = r.find(".__button"), u = !1, _ = {
        init: function () {
            return window.Follow ? void _.createFollow(window.Follow) : void(window.seajs && seajs.use("widget.follow", function (t) {
                    t ? (window.Follow = t, _.createFollow(t)) : _.createFollow(window.Follow)
                }))
        }, createFollow: function (t) {
            var e = _.getFllowId(), i = r.find(".__hint");
            p.attr("data-vid", o);
            var n = {
                container: r,
                f: _.getFrom(),
                t: _.getType(),
                buttonTexts: ["加入看单", "已加入看单", "移出看单"],
                type: "list",
                id: e,
                buttonSle: ".__button",
                buttonText: l,
                videotype: COVER_INFO.typeid || VIDEO_INFO.typeid || 23,
                isSingleBtn: !0,
                tipsElement: i,
                showTips: !0,
                openLogin: txv.login.openLogin,
                isLogin: function () {
                    return txv.login.isLogin()
                },
                followedClass: c,
                onStatusChange: function (t, e) {
                    u = t, a.emit("followChange", u)
                },
                onFollowFail: function () {
                    a.emit("followChange", !1)
                },
                onCancelFail: function () {
                    a.emit("followChange", !0)
                }
            };
            d = t.create(n)
        }, getFllowId: function () {
            var t = COVER_INFO.id, e = t;
            return e = $.inArray(COVER_INFO.typeid, [1, 10]) != -1 && COVER_INFO.columnid > 0 ? COVER_INFO.columnid : $.inArray(COVER_INFO.typeid, [1, 2, 3, 9, 37]) != -1 ? t : $.inArray(COVER_INFO.typeid, [4, 6, 21]) != -1 && COLUMN_INFO.id > 0 ? COLUMN_INFO.id : o
        }, getFrom: function () {
            return 2
        }, getType: function () {
            var t = -1;
            return t = $.inArray(COVER_INFO.typeid, [1, 10]) != -1 && COVER_INFO.columnid > 0 && COVER_INFO.columnid > 0 || $.inArray(COVER_INFO.typeid, [4, 6, 21]) != -1 && COLUMN_INFO.id > 0 ? 5 : $.inArray(COVER_INFO.typeid, [1, 2, 3, 9, 37]) != -1 ? 1 : 31
        }, reset: function () {
            p.attr("data-vid", o), null == d && d.init()
        }
    };
    a.on("vidChanged", function (t) {
        var e, i = _.getFllowId();
        t.vid != o && (o = t.vid, p.attr("data-vid", o)), e = _.getFllowId(), e != i && (d ? d.reset({
                id: e,
                t: _.getType()
            }) : _.init())
    });
    var f = $.Deferred(), v = $.Deferred();
    a.on("tvp-ready", function () {
        f.resolve()
    }), n("//vm.gtimg.cn/tencentvideo_v1/js/widget/follow.js", function () {
        v.resolve()
    }), $.when(f, v).done(function () {
        _.init()
    }), a.on("tvp-follow", function () {
        txv.login.isLogin() ? u ? d.cancel(p) : d.follow(p) : (a.emit("followChange", !1), txv.login.openLogin({
                success: function () {
                    a.emit("player-follow", u)
                }
            }))
    }), txv.login.addLogoutCallback(function () {
        Follow && Follow.onLogout(), u = !1
    }), txv.login.addLoginCallback(function () {
        Follow && Follow.onLogin()
    })
}, function (t, e, i) {
    "use strict";
    function n(t) {
        return p.test(t)
    }

    function a(t) {
        return 1 == t.length ? t[0] : "//vm.gtimg.cn/c/=" + s.map(t, function (t) {
                return t.replace(p, "")
            }).join(",")
    }

    function o(t) {
        ~l.indexOf(t) || (l.push(t), d || (d = !0, setTimeout(function () {
            d = !1;
            var t = [];
            s.forEach(l, function (e) {
                n(e) ? t.push(e) : $.getScript(e, function () {
                        r[e] = !0;
                        var t = c[e];
                        c[e] = null, t.forEach(function (t) {
                            t && t()
                        })
                    })
            }), l = [], t.length && $.getScript(a(t), function () {
                t.forEach(function (t) {
                    var e = c[t];
                    r[t] = !0, c[t] = !1, e.forEach(function (t) {
                        t && t()
                    })
                })
            })
        })))
    }

    var s = i(13), r = {}, c = {}, l = [], d = !1, p = /^\/\/vm\.gtimg\.cn/;
    t.exports = function (t, e) {
        return r[t] ? void(e && e()) : void(c[t] ? c[t].push(e) : (c[t] = [e], o(t)))
    }
}, function (t, e, i) {
    var n, a, o = window.PageMsg, s = i(17);
    t.exports = Reve.component("c-switch-side", {
        ready: function () {
            var t = this;
            n = $(t.$el), a = n.find("#mod_tabs_ul"), a.on("mouseenter", "li", function () {
                var e = $(this);
                t.switchTo(e.index()) && s.click("tabs-" + e.attr("data-type"))
            });
            var e = $("#mod_active_tab"), i = 0;
            o.on("switchSideTo", function (n, s) {
                if (s = s || !1, "number" == typeof n)switch (n) {
                    case-2:
                        t.switchTo(i);
                        break;
                    case-1:
                        e.addClass("none"), t.showOne(), e.index() == t.currentIndex() && t.switchTo(0);
                        break;
                    case 10:
                        e.removeClass("none"), t.showOne(), s && (o.emit("tvp-toggleSideBarBtnClick", "show"), "function" == typeof window.__flashplayer_closelist && window.__flashplayer_closelist(), i = t.currentIndex(), t.switchTo(e.index()));
                        break;
                    case 11:
                        $("#mod_qqmusic_tab").removeClass("none"), t.showOne();
                        break;
                    case 12:
                        var r = $("#mod_columns_tab");
                        r.removeClass("none"), t.showOne(), s && t.switchTo(r.index());
                        break;
                    case 13:
                        var c = $("#mod_columns_tab");
                        c.size() > 0 && (c.remove(), $("#mod_columns_content").remove()), t.showOne();
                        break;
                    case 14:
                        var l = $("#mod_relation_tab");
                        l.size() > 0 && t.switchTo(l.index());
                        break;
                    default:
                        s && t.switchTo(n)
                } else if ("string" == typeof n && s) {
                    var d = a.find("[data-type='" + n + "']").index();
                    d >= 0 && t.switchTo(d)
                }
                $("#_lottery_winlist").remove()
            }), t.showOne()
        }, methods: {
            switchTo: function (t) {
                if (a.find(".current").index() == t)return !1;
                var e = a.find("li"), i = e.eq(t);
                e.removeClass("current"), i.addClass("current");
                var s = n.find(".panel_body");
                s.addClass("none"), s.eq(t).removeClass("none");
                var r = i.attr("data-type");
                return o.emit("switchSide", r), !0
            }, showOne: function () {
                var t = a.find("li"), e = 0;
                t.each(function () {
                    $(this).hasClass("none") || e++
                }), a[1 == e ? "addClass" : "removeClass"]("only_child")
            }, currentIndex: function () {
                return a.find("li.current").index()
            }
        }
    })
}, function (t, e, i) {
    "use strict";
    function n() {
        return u || window.jQuery || window.$
    }

    function a(t, e) {
        return _.hot([h, "event", t, e].join(".")), this
    }

    function o(t, e, i) {
        return _.hot([h, "click", t, e, i].join(".")), this
    }

    function s(t) {
        return _.hot([h, "pageview", t].join(".")), this
    }

    function r(t, e) {
        return _.hot([h, "stat", t, e].join(".")), this
    }

    function c(t) {
        return "array" !== f.type(t) ? "" : f.map(t, function (t) {
                return f.map(t, function (t) {
                    return encodeURIComponent(t)
                }).join(",")
            }).join("|")
    }

    function l(t) {
        return "string" != typeof t ? [] : f.map(t.split("|"), function (t) {
                return f.map(t.split(","), function (t) {
                    return decodeURIComponent(t)
                })
            })
    }

    function d(t, e) {
        switch (t) {
            case"click":
                o.apply(this, e);
                break;
            case"pageview":
                s.apply(this, e);
                break;
            case"event":
                a.apply(this, e);
                break;
            case"stat":
                r.apply(this, e)
        }
    }

    function p(t) {
        var e = Array.prototype.slice.call(arguments, 1);
        if (v)try {
            var i = localStorage.getItem(g);
            try {
                i = l(i)
            } catch (n) {
            }
            return "array" !== f.type(i) && (i = []), i.push([t].concat(e)), void localStorage.setItem(g, c(i))
        } catch (n) {
        }
        d(t, e)
    }

    var u, _ = i(18), f = i(13), v = "localStorage" in window && null !== window.localStorage, m = "index", h = "vplay", g = h + "_lazy_reports";
    t.exports = {
        setPage: function (t) {
            return m = t, this
        }, setJQ: function (t) {
            return u = t, this
        }, bind2d: function (t, e, i) {
            var a = n();
            return a(t).on("click", "[" + i + "]", function (t) {
                for (var n, s = t.currentTarget, r = a(s).attr(i), c = 10; c && s && !(n = a(s).attr(e));)c--, s = s.parentNode;
                n && o(m, n, r)
            }), this
        }, bind: function (t, e) {
            var i = n();
            return i(t).on("click", "[" + e + "]", function (t) {
                var n = t.currentTarget, a = i(n), s = a.attr(e);
                if ("A" == n.tagName) {
                    var r = a.attr("href"), c = a.attr("target");
                    if (!/^(javascript:|#)/.test(r) && !c)return void p("click", m, s, "")
                }
                o(m, s, "")
            }), this
        }, click: function (t) {
            return o(m, t, "")
        }, event: function (t) {
            return a(m, t)
        }, stat: function (t) {
            return r(m, t)
        }, flush: function () {
            if (localStorage)try {
                var t = localStorage.getItem(g);
                localStorage.removeItem(g), t && (t = l(t), f.forEach(t, function (t) {
                    d(t[0], t.slice(1))
                }))
            } catch (e) {
            }
        }, pv: s
    }
}, function (t, e, i) {
    "use strict";
    function n() {
        return m + "&_dc=" + Math.random()
    }

    function a() {
        function t() {
            return Math.floor(65536 * (1 + Math.random())).toString(16).substring(1)
        }

        return [t(), t(), t(), t()].join("")
    }

    function o() {
        var t = l.get("tvfe_boss_uuid");
        if (!t) {
            t = a();
            try {
                l.set("tvfe_boss_uuid", t, "qq.com", !1, 87600)
            } catch (e) {
                l.set("tvfe_boss_uuid", t, "", !1, 87600)
            }
        }
        return t
    }

    function s(t, e) {
        t = t.split("."), (t.length < 3 || t.length > 5) && console.warn("按钮名分段数不对，可能会导致数据丢失");
        var i = n();
        i += "&s_ptag=" + f + "&s_app=" + (t[0] || "") + "&s_module=" + (t[1] || "") + "&s_behave=" + (t[2] || "") + "&s_sub=" + (t[3] || "") + "&s_fifth=" + (t[4] || ""), e && e.lazy ? p.push(i) : d(i)
    }

    var r, c = i(19), l = i(21), d = i(22), p = i(23);
    try {
        r = window.jQuery || window.Zepto || window.tvp && tvp.$
    } catch (u) {
    }
    r && r(document.body).on("click", "[_boss]", function (t) {
        var e = r(t.currentTarget);
        s(e.attr("_boss"))
    });
    var _ = window.sessionStorage || {
            getItem: function () {
                return ""
            }
        }, f = c.get("ptag") || _.getItem("ptag") || l.get("ptag"), v = c.get("openid") || l.get("openid"), m = "//btrace.qq.com/kvcollect?BossId=3255&Pwd=2118551257&s_url=" + encodeURIComponent(location.href.split("?")[0]) + "&s_referrer=" + encodeURIComponent(document.referrer) + "&s_ua=" + navigator.userAgent + "&s_uuid=" + o() + "&s_uin=" + (l.get("o_cookie") || l.get("uin") || l.get("luin")) + "&s_openid=" + v;
    t.exports = {
        ptag: function (t) {
            f = t
        }, hot: s, uid: o
    }
}, function (t, e, i) {
    "use strict";
    var n = i(20);
    t.exports = {
        get: function (t, e) {
            var i = new RegExp("(\\?|#|&)" + t + "=([^&#]*)(&|#|$)");
            e = e || location.href;
            var a = e.match(i);
            return a ? n(a[2]) : ""
        }, del: function (t) {
            var e = new RegExp("(\\?|#|&)" + t + "=([^&#]*)(&|#|$)"), i = location.href.match(e);
            i = i ? i[2] : "";
            try {
                window.history && history.replaceState && history.replaceState(null, null, location.href.replace(t + "=" + i, ""))
            } catch (n) {
            }
        }
    }
}, function (t, e) {
    var i = {"<": "&#60;", ">": "&#62;", '"': "&#34;", "'": "&#39;", "&": "&#38;"}, n = function (t) {
        return i[t]
    };
    t.exports = function (t) {
        return ("" + t).replace(/&(?![\w#]+;)|[<>"']/g, n)
    }
}, function (t, e) {
    "use strict";
    t.exports = {
        set: function (t, e, i, n, a) {
            if (a) {
                var o = new Date, s = new Date;
                s.setTime(o.getTime() + 36e5 * a)
            }
            return document.cookie = t + "=" + e + "; " + (a ? "expires=" + s.toGMTString() + "; " : "") + (n ? "path=" + n + "; " : "path=/; ") + (i ? "domain=" + i + ";" : "domain=" + window.location.host + ";"), !0
        }, get: function (t, e) {
            var i = new RegExp("(?:^|;+|\\s+)" + t + "=([^;]*)"), n = (e || document.cookie).match(i);
            return n ? n[1] : ""
        }, del: function (t, e, i) {
            var n = new Date;
            n.setTime(n.getTime() - 1), document.cookie = t + "=; expires=" + n.toGMTString() + ";" + (i ? "path=" + i + "; " : "path=/; ") + (e ? "domain=" + e + ";" : "domain=" + window.location.host + ";")
        }
    }
}, function (t, e) {
    "use strict";
    function i() {
    }

    t.exports = function (t) {
        var e = document.createElement("img");
        e.onerror = i, e.onload = i, e.onabort = i, e.src = t
    }
}, function (module, exports, __webpack_require__) {
    var cookie = __webpack_require__(21), report = __webpack_require__(22), storage = function () {
        var t = !1;
        try {
            window.localStorage && (t = !0)
        } catch (e) {
        }
        var i = location.hostname || location.host;
        return t ? {
                get: function (t) {
                    return localStorage.getItem(t)
                }, set: function (t, e) {
                    return localStorage.setItem(t, e)
                }, clear: function (t) {
                    return localStorage.removeItem(t)
                }
            } : {
                get: function (t) {
                    return cookie.get(t)
                }, set: function (t, e) {
                    return cookie.set(t, e, i)
                }, clear: function (t) {
                    return cookie.set(t, "", i)
                }
            }
    }(), reg = /^(?:ht|f)tp(?:s)?\:\/\/(?:[\w\-\.]+)\.\w+/i, k = "txv_lazyreport_list", d = "|", clear = function () {
        return storage.clear(k)
    }, shift = function () {
        var t = storage.get(k);
        if (!t)return "";
        var e = t.split(d), i = e.shift();
        return storage.set(k, e.join(d)), i ? decodeURIComponent(i) : ""
    }, push = function (t) {
        if (t) {
            var e = storage.get(k), i = [];
            e && (i = e.split(d)), i.push(encodeURIComponent(t)), storage.set(k, i.join(d))
        }
    }, reportItem = function (item) {
        if (reg.test(item))try {
            !!report && report(item)
        } catch (e) {
        } else setTimeout(function () {
            try {
                eval(item)
            } catch (e) {
            }
        }, 0)
    }, _report = function () {
        for (var t = shift(); t;)reportItem(t), t = shift()
    };
    module.exports = {push: push, clear: clear, report: _report}
}, function (t, e) {
    var i = $("html"), n = {
        ie8Reize: function () {
            var t = document.documentElement.clientWidth;
            t < 1279 ? i.removeClass("screen_ms").addClass("screen_xs") : t < 1599 ? i.removeClass("screen_xs").addClass("screen_ms") : i.removeClass("screen_xs").removeClass("screen_ms")
        }, ie9ListHeight: function () {
            var t = $(".player_side_bd .panel_body"), e = 0;
            t.each(function (t) {
                $(this).hasClass("none") || (e = t)
            }), t.removeClass("none");
            for (var i = 0; i < t.size(); i++)t.eq(i).find(".scroll_wrap").css({height: t.height() - t.eq(i).find(".scroll_top").outerHeight()});
            t.each(function (t) {
                var i = $(this);
                e != t ? i.addClass("none") : i.removeClass("none")
            })
        }
    };
    t.exports = function () {
        i.hasClass("lte_ie9") && n.ie9ListHeight(), (i.hasClass("lte_ie8") || i.hasClass("lte_ie9")) && $(window).resize(function () {
            n.ie8Reize(), n.ie9ListHeight()
        })
    }
}, function (t, e) {
    $(window).scroll(function () {
        $(window).scrollTop() > $(".container_player").height() ? $(".site_head_simple").addClass("site_head_simple_sticky") : $(".site_head_simple").removeClass("site_head_simple_sticky")
    })
}, function (t, e, i) {
    var n, a = i(17), o = i(12), s = window.PageMsg, r = i(11), c = !0;
    t.exports = Reve.component("c-oper-playnum", {
        ready: function () {
            n = $(this.$el), 4 == COVER_INFO.typeid && s.on("vidChanged", function (t) {
                $.ajax({
                    url: "//union.video.qq.com/fcgi-bin/data?tid=376&&appid=20001212&appkey=b4789ed0ec69d23a&otype=json",
                    data: {idlist: t.vid},
                    dataType: "jsonp"
                }).done(function (t) {
                    $("#mod_cover_playnum").text(o.formatNum(t.results[0].fields.view_all_count))
                })
            })
        }, methods: {
            refreshPlaynum: function () {
                r.getCoverDetail(COVER_INFO.id, function (t) {
                    var e = {
                        _cover_today: t.tdnumc,
                        _cover_total: t.allnumc,
                        _zp_today: t.tdnumc_m,
                        _zp_total: t.allnumc_m,
                        _zb_today: t.tdnumc - t.tdnumc_m,
                        _zb_total: t.allnumc - t.allnumc_m
                    };
                    t.column && t.column.c_column_view && (e._column_today = t.column.c_column_view.c_tdnumc, e._column_total = t.column.c_column_view.c_allnumc), t.allnumc > 0 && r.sameCover(t.allnumc);
                    for (var i in e) {
                        var a = e[i] > 0 ? o.formatNum(e[i]) : 0;
                        n.find("." + i).html(a)
                    }
                    c = !1
                })
            }, showPop: function () {
                c && 4 != COVER_INFO.typeid && this.refreshPlaynum(), $(this.$el).addClass("open"), a.event("oper-playnum")
            }, hidePop: function () {
                $(this.$el).removeClass("open")
            }
        }
    })
}, function (t, e) {
    var i = window.PageMsg;
    t.exports = Reve.component("c-oper-comment", {
        ready: function () {
        }, methods: {
            showComment: function () {
                i.emit("scrollToComment")
            }
        }
    })
}, function (t, e, i) {
    var n = window.PageMsg, a = i(12), o = i(17), s = null, r = $("#qrcode");
    t.exports = Reve.component("c-oper-qrcode", {
        data: function () {
            return {title: VIDEO_INFO.title, time: "00:00", showing: !1}
        }, ready: function () {
            var t = this;
            n.on("vidChanged", function (e) {
                t.$data.title = e.title, t.$data.time = "00:00", t.$data.vid = e.vid, t.$update(), r.empty(), s = null, t.$data.showing && t.makeQrcode(e.vid, !0)
            }), n.on("tvp-timeupdate", function (e) {
                t.$data.time = a.showTime(e)
            })
        }, methods: {
            showPop: function () {
                this.makeQrcode(), this.$set({showing: !0}), o.event("oper-qrcode")
            }, hidePop: function () {
                this.$set({showing: !1})
            }, makeQrcode: function (t, e) {
                if (window.QRCode && (!s || e)) {
                    var i = this.$data.vid || VIDEO_INFO.vid, n = "https://m.v.qq.com/play.html?goapp=849&ptag=849&vid=" + i;
                    COVER_INFO.id && (n += "&cid="), r.size() > 0 && (s = new QRCode(r[0], {
                        text: n,
                        width: 100,
                        height: 100,
                        colorDark: "#000000",
                        colorLight: "#ffffff",
                        center: !1,
                        correctLevel: QRCode.CorrectLevel.H
                    }))
                }
            }
        }
    })
}, function (t, e, i) {
    var n;
    t.exports = Reve.component("c-oper-download", {
        data: function () {
            return {isHover: !1}
        }, ready: function () {
            if (txv.ua.windows ? n = i(30) : $(this.$el).remove(), txv.clipboard) {
                var t = $(this.$el), e = this;
                if (t.hasClass("action_download") && !t.hasClass("disabled")) {
                    var a = t.find("a[_stat]");
                    a.each(function () {
                        var t = $(this);
                        txv.clipboard.to({
                            el: this, text: "qqlivechannel=channel1.vxiazai", click: function () {
                                e.$methods.download.call(e)
                            }, mouseenter: function () {
                                t.css("color", "#fff"), e.$set("isHover", !0)
                            }, mouseleave: function () {
                                t.css("color", "#999")
                            }
                        })
                    })
                }
            }
        }, methods: {
            download: function () {
                n && n.isPcClientExist().then(function () {
                    n.openClient(2, "web.vxiazai")
                }).fail(function (t) {
                    n.showPopAlert(2, "", "//node.video.qq.com/x/api/download_pc")
                })
            }, enter: function () {
                this.$set("isHover", !0)
            }, leave: function () {
                this.$set("isHover", !1)
            }
        }
    })
}, function (t, e, i) {
    function n(t, e) {
        return s.open(a(t, e))
    }

    function a(t, e) {
        var i = COVER_INFO.id, n = c;
        if (t && 1 == t) {
            var a = "qqlive://sso/";
            if (i) {
                var o = i;
                /^\d+$/i.test(o) ? a += "projectid=" + o : o.toLowerCase().indexOf("qqlive://sso/") >= 0 ? a = o : /^[a-z0-9]{15}$/i.test(o) && (a += "vbarid=" + o)
            }
            return n && (a = txv.util.addUrlParam({videoid: n}, a)), a = txv.util.addUrlParam({
                start: 0,
                atag: e,
                stag: -1 != navigator.userAgent.indexOf("QQLive") ? "Playpage.Pcclient" : "Playpage.web"
            }, a), a = a.replace("?", "&")
        }
        var s = "qqlive://download/videoid=" + n;
        return i && (s = "qqlive://download/vbarid=" + i + "&vlist=" + n), s += "&atag=" + e
    }

    function o() {
        if (txv.ua.chrome)for (var t = 0; t < navigator.plugins.length; t++)if ("Chrome PDF Viewer" == navigator.plugins[t].name)return !0
    }

    var s = i(31), r = window.PageMsg, c = VIDEO_INFO.vid;
    r.on("vidChanged", function (t) {
        c = t.vid
    }), r.wait("vidChanged", function (t) {
        c = t.vid
    });
    var l, d = function () {
        var t = $.Deferred();
        return $.ajax({
            url: "//sns.video.qq.com/fcgi-bin/dlib/dataout",
            data: {auto_id: 2332, otype: "json"},
            CSRF: !0,
            dataType: "jsonp"
        }).done(function (e) {
            e && 0 == e.returncode ? t.resolve(e) : t.reject(e)
        }).fail(function (e) {
            t.reject(e)
        }), t
    }, p = function (t, e, i) {
        var n = 1 == t || 2 == t;
        if (o() && n) {
            var a = "fixed_download_close", s = $('<div class="mod_fixed_download"><div class="fixed_download"><a class="' + a + '" href="javascript:void(0);">×</a></div></div>');
            s.find("." + a).bind("click", function () {
                s.remove()
            }), $("body").append(s)
        } else switch (t) {
            case 1:
                txv.tips.FloatWarning({title: "未检测到腾讯视频客户端，安装后可在客户端观看", useMask: !1});
                break;
            case 2:
                txv.tips.FloatWarning({title: "未检测到腾讯视频客户端，安装后马上为您下载本片", useMask: !1});
                break;
            default:
                txv.tips.FloatWarning({
                    staySecond: 5,
                    title: '自动下载失败，请 <a href="' + location.protocol + "//v.qq.com/download.html?ptag=" + (1 == e ? "PCwatch" : "PCdownload") + '" target="_blank" _hot="cover.download.' + (1 == e ? "PCwatch" : "PCdownload") + '">点这里下载</a>'
                })
        }
        clearTimeout(l), n && (l = setTimeout(function () {
            i ? window.location.assign(i) : d().then(function (t) {
                    window.location.assign(t.url)
                }, function () {
                    p(-1, t)
                })
        }, 2e3))
    };
    t.exports = {isPcClientExist: s.exist, openClient: n, pullService: s.pull, showPopAlert: p}
}, function (t, e) {
    function i(t) {
        c = !1;
        var e = l, i = e.shift();
        for (l = []; i;)i(t), i = e.shift()
    }

    function n(t) {
        txv.client ? t(txv.client) : c ? l.push(t) : (c = !0, l.push(t), $.getScript("//vm.gtimg.cn/tencentvideo_v1/script/module/txv.client.js", function () {
                    c && i(txv.client)
                }), setTimeout(function () {
                    c && i()
                }, 3e3))
    }

    function a(t) {
        var e = p, i = e.shift();
        for (p = []; i;)t ? i.resolve(t) : i.reject(), i = e.shift();
        d = !1
    }

    function o() {
        var t = $.Deferred();
        return p.push(t), d || (d = !0, n(function (t) {
            t ? t.exist().done(function (t) {
                    a(t)
                }).fail(function () {
                    a()
                }) : a()
        })), t
    }

    function s(t) {
        var e = $.Deferred();
        return n(function (i) {
            i ? i.open(t).done(function () {
                    e.resolve()
                }).fail(function () {
                    e.reject()
                }) : e.reject()
        }), e
    }

    function r() {
        var t = $.Deferred();
        return n(function (e) {
            e ? e.pull().done(function () {
                    t.resolve()
                }).fail(function (e) {
                    t.reject(e)
                }) : t.reject(-1)
        }), t
    }

    var c = !1, l = [], d = !1, p = [];
    t.exports = {exist: o, open: s, pull: r}
}, function (t, e, i) {
    function n(t, e) {
        var i = [{head: "PC客户端观看 体验三倍流畅度 ", tail: "立即提速", type: 1}];
        return t && i.push({head: "PC客户端观看 免费观看1080P蓝光 ", tail: "观看高清", type: 1}), e && i.push({
            head: "使用PC客户端 3秒极速下载 ",
            tail: "立即下载",
            type: 2
        }), i[Math.floor(Math.random() * i.length)]
    }

    function a(t) {
        if (t) {
            var e = t.getDefinitionList();
            if ("object" == typeof e && e.length > 0)for (var i = 0, n = e.length; i < n; i++) {
                var a = e[i];
                if (a && "fhd" === a.name)return !0
            }
        }
    }

    var o, s = window.PageMsg, r = "txv_play_nodowntip", c = 6048e5, l = 18e5;
    t.exports = Reve.component("c-download-tip", {
        data: function () {
            var t = n();
            return {tipClient: !1, tipClose: !1, tipHead: t.head, tipTail: t.tail, type: t.type, right: !1}
        }, ready: function () {
            txv.ua.windows ? o = i(30) : $(this.$el).remove();
            var t = this, e = !1, r = 0, c = l, d = (new Date).getTime();
            if (s.on("tvp-playing", function () {
                    e || r || (d = (new Date).getTime(), r = setTimeout(function () {
                        r = 0;
                        var e = n(a(window.PLAYER), t.$data.right);
                        t.$set({tipHead: e.head, tipTail: e.tail, type: e.type}), t.$methods.showClientTip.call(t)
                    }, c))
                }), s.on("tvp-paused", function () {
                    if (!e && r) {
                        var t = (new Date).getTime();
                        c -= t - d
                    }
                }), txv.clipboard) {
                var p = $(this.$el).find(".pop_tips_link");
                if (p.length > 0) {
                    var u = this;
                    txv.clipboard.to({
                        el: p.get(0), text: "qqlivechannel=channel1.vtip", click: function () {
                            u.$methods.clickTip.call(u)
                        }
                    })
                }
            }
        }, methods: {
            clickTip: function () {
                var t = this;
                o && o.isPcClientExist().then(function () {
                    o.openClient(t.$data.type, "web.vtip")
                }).fail(function (t) {
                    o.showPopAlert(2, "", "//node.video.qq.com/x/api/download_pc")
                })
            }, download: function () {
                o && o.isPcClientExist().then(function () {
                    o.openClient(2, "web.vtip")
                }).fail(function (t) {
                    o.showPopAlert(2, "", "//node.video.qq.com/x/api/download_pc")
                })
            }, showClientTip: function () {
                var t = localStorage && localStorage.getItem(r);
                if (!t || (new Date).getTime() - t > c) {
                    $(this.$el).parent().addClass("timing"), this.$set({tipClient: !0});
                    var e = this;
                    this.handle = setTimeout(function () {
                        $(e.$el).parent().removeClass("timing"), e.$set({tipClient: !1})
                    }, 5e3)
                }
            }, closeClientTip: function () {
                var t = this;
                clearTimeout(this.handle), t.$set({tipClose: !0, tipHead: "关闭后7天不再提示"}), setTimeout(function () {
                    $(t.$el).parent().removeClass("timing"), t.$set({tipClient: !1}), localStorage && localStorage.setItem(r, (new Date).getTime())
                }, 1e3)
            }
        }
    })
}, function (t, e, i) {
    var n = window.PageMsg, a = i(17), o = i(12), s = VIDEO_INFO.vid, r = VIDEO_INFO.title, c = null, l = $("#mod_shares_qrcode");
    t.exports = Reve.component("c-oper-share", {
        data: function () {
            return {showAll: !0, shareFlash: document.URL, shareHtml: document.URL, shareCommon: document.URL}
        }, ready: function () {
            var t = this;
            t.initShareBtn(), t.setShareCodeText(VIDEO_INFO), n.emit("shareInited"), n.on("vidChanged", function (e) {
                s = e.vid, r = e.title, t.setShareCodeText(e), l.empty(), c = null
            }), txv.login.addReadyCallback(function () {
                txv.login.isWxLogin() && t.setQQRelateState()
            }), txv.login.addLogoutCallback(function () {
                t.setQQRelateState(!0)
            }), txv.login.addLoginCallback(function () {
                txv.login.isWxLogin() && t.setQQRelateState()
            })
        }, methods: {
            showPop: function () {
                this.setWxQrcode(), $(this.$el).addClass("open"), a.event("oper-share")
            }, hidePop: function () {
                $(this.$el).removeClass("open")
            }, setQQRelateState: function (t) {
                this.$data.showAll = t, this.$update()
            }, copyShareTxt: function () {
                var t = $(this.$el).parent().find("input");
                if (0 != t.size()) {
                    t.select();
                    try {
                        if (window.clipboardData)return window.clipboardData.setData("text", t.val()), void txv.tips.FloatMsg({
                            title: "复制成功",
                            desc: "现在您可以粘贴（Ctrl+V）到Blog或BBS中了"
                        })
                    } catch (e) {
                    }
                    txv.tips.FloatWarning({
                        title: "操作提示",
                        desc: "您使用的浏览器不支持此复制功能，请使用" + (txv.ua.macs ? "command+c" : "Ctrl+C或鼠标右键。")
                    })
                }
            }, setWxQrcode: function (t) {
                if (!c || t) {
                    var e = txv.util.addUrlParam({ptag: "1.wechat", _out: 10, __t: 1}, this.getVidLink());
                    window.QRCode && l.size() > 0 && (c = new QRCode(document.getElementById("mod_shares_qrcode"), {
                        text: e,
                        width: 100,
                        height: 100,
                        colorDark: "#000000",
                        colorLight: "#ffffff",
                        center: !1,
                        correctLevel: QRCode.CorrectLevel.H
                    }))
                }
            }, setShareCodeText: function (t) {
                var e = this, i = t.vid, n = location.protocol + "//imgcache.qq.com/tencentvideo_v1/playerv3/TPout.swf?max_age=86400&v=20161117&vid=" + i + "&auto=0";
                e.getVidIdx(i) > 0 && (n += "&attstart=" + t.piantou || t.playStartTime + "&attend=" + t.pianwei || t.playEndTime + "&duration=" + t.duration), e.$data.shareFlash = n, e.$data.shareHtml = '<embed src="' + n + '" allowFullScreen="true" quality="high" width="480" height="400" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash"></embed>', e.$data.shareCommon = '<iframe frameborder="0" width="640" height="498" src="' + location.protocol + "//v.qq.com/iframe/player.html?vid=" + i + '&tiny=0&auto=0" allowfullscreen></iframe>', e.$update()
            }, getVidIdx: function (t) {
                return t.indexOf("_") < 0 ? 0 : parseInt(t.split("_")[1])
            }, getVidLink: function () {
                return COVER_INFO.id ? txv.util.getFullUrlPath(o.playUrl(COVER_INFO.id, s)) : txv.util.getFullUrlPath(o.playUrl(s))
            }, initShareBtn: function () {
                var t = this, e = {
                    mod_elm: document.getElementById("mod_shares"), targetName: "VShare", getPic: function () {
                        return $.inArray(COVER_INFO.typeid, [1, 2, 3, 39]) != -1 ? COVER_INFO.pic ? COVER_INFO.pic.replace("_h", "") : "" : txv.util.getVideoSnap(s, t.getVidIdx(s))
                    }, getLink: function (e) {
                        return t.getVidLink()
                    }, getDesc: function (t) {
                        var e = document.title, i = t.getAttribute("tid"), n = r, a = txv.share.config.getLink(), o = [txv.share.config.platform, i].join("."), s = "我正在看";
                        if ("qq" == i) e = txv.share.config.getTitle(t), $.inArray(COVER_INFO.typeid, [1, 2, 3, 9, 10]) == -1 && (e = $.trim(e.replace(COVER_INFO.title, ""))); else {
                            if ("qzone" == i)return "";
                            COVER_INFO.title ? (e = s + "#" + COVER_INFO.title + "# ", 1 == COVER_INFO.typeid ? e += COVER_INFO.secTitle || "" : (0 == n.indexOf(COVER_INFO.title) && (n = $.trim(n.replace(COVER_INFO.title, ""))), e += n)) : e = s + "#" + n + "#", a.indexOf("ptag") == -1 && (a = a + (a.indexOf("?") == -1 ? "?" : "&") + "ptag=" + encodeURIComponent(o)), e += " " + a
                        }
                        return e
                    }, getTitle: function (t) {
                        var e, i = document.title, n = "我正在看";
                        if (t && t.getAttribute)switch (e = t.getAttribute("tid")) {
                            case"wechat":
                                COVER_INFO.isExclusive && (i = $("#h1_title").text() + "【腾讯视频全网独播】 - 高清在线观看 - 腾讯视频");
                                break;
                            case"qq":
                                var a = r;
                                i = COVER_INFO.title || i, 0 != a.indexOf(COVER_INFO.title) ? i += " " + a.replace(COVER_INFO.varietyDate, "") : i = a, COVER_INFO.isExclusive && (i += "【腾讯视频全网独播】");
                                break;
                            case"qzone":
                                var o = r;
                                i = COVER_INFO.title || "", 0 != o.indexOf(COVER_INFO.title) ? i += " " + o : i = COVER_INFO.secTitle ? o + " " + COVER_INFO.secTitle : o, COVER_INFO.isExclusive && (i += "【腾讯视频全网独播】");
                                break;
                            case"douban":
                            case"tencentweibo":
                            case"sinaweibo":
                                var s = COVER_INFO.title || VIDEO_INFO.title, o = r;
                                COVER_INFO.varietyDate && (s = s.replace(COVER_INFO.varietyDate, "")), i = n + "#" + $.trim(s) + "#", o && o != COVER_INFO.title ? (0 == o.indexOf(COVER_INFO.title) && (o = $.trim(o.replace(COVER_INFO.title, ""))), i += " " + o) : COVER_INFO.secTitle && 1 != COVER_INFO.typeid && (i += " " + COVER_INFO.secTitle), 1 == COVER_INFO.typeid && COVER_INFO.secTitle && (i += " " + COVER_INFO.secTitle), COVER_INFO.isExclusive && (i += "【腾讯视频全网独播】"), "douban" != e && (i += " @腾讯视频")
                        }
                        return i
                    }, getSummary: function () {
                        return COVER_INFO.brief ? COVER_INFO.brief.replace("[正统看点]", "") : COVER_INFO.secTitle || ""
                    }, shareButtonSelector: "a.btn_share"
                };
                txv.share.init(e)
            }
        }
    })
}, function (t, e) {
    t.exports = Reve.component("c-oper-give", {
        ready: function () {
            this.qrcode()
        }, methods: {
            qrcode: function () {
                var t = "http://film.qq.com/weixin/givemovie.html?cid=" + COVER_INFO.id;
                if (txv.login.isLogin())if ("wx" === txv.login.getLoginType()) {
                    var e = txv.login.getWxAuthCookies();
                    t += "&appid=" + e.appid + "&openid=" + e.openid
                } else t += "&uin=" + txv.login.getUin();
                var i = "//pay.video.qq.com/fcgi-bin/qrencode?isNeedShort=1&size=150&url=" + encodeURIComponent(t);
                $("#give-qrcode").attr("src", i)
            }, showPop: function () {
                $(this.$el).addClass("open")
            }, hidePop: function () {
                $(this.$el).removeClass("open")
            }
        }
    })
}, function (t, e, i) {
    var n, a = i(12), o = window.PageMsg, s = i(11), r = !1, c = i(17), l = {
        bindTabEvent: function () {
            var t = $("#mod_title_select");
            $("#change_select_btn").find(".item").hover(function () {
                var e = $(this), i = $("#year_" + e.attr("data-year"));
                l.setDisplay(i.find(".__month.current").attr("data-month"), function (n) {
                    n && (t.find(".__year").removeClass("current"), e.addClass("current"), $(".__year_item").hide(), i.show())
                }), c.click("tabs-columns:year")
            }), t.on("mouseover", ".__month", function (t) {
                t.preventDefault();
                var e = $(this);
                l.setDisplay(e.attr("data-month"), function (t) {
                    t && (e.parent().find(".__month").removeClass("current"), e.addClass("current"))
                }), c.click("tabs-columns:month")
            }), t.on("click", ".__left", function () {
                var t = $(this);
                if (!t.hasClass("disabled")) {
                    var e = t.parent(), i = +(e.attr("data-page") || 0);
                    if (0 == i)return void t.addClass("disabled");
                    e.find("[data-page=" + i + "]").hide(), i--, e.find("[data-page=" + i + "]").show(), e.attr("data-page", i), 0 == i && t.addClass("disabled");
                    var n = +(e.attr("data-count") || 0);
                    i < n && e.find(".__right").removeClass("disabled"), c.click("tabs-columns:left")
                }
            }), t.on("click", ".__right", function () {
                var t = $(this);
                if (!t.hasClass("disabled")) {
                    var e = t.parent(), i = +(e.attr("data-page") || 0);
                    e.find("[data-page=" + i + "]").hide(), i++, e.find("[data-page=" + i + "]").show(), e.attr("data-page", i);
                    var n = +(e.attr("data-count") || 0);
                    i == n && t.addClass("disabled"), i > 0 && e.find(".__left").removeClass("disabled"), c.click("tabs-columns:right")
                }
            })
        }, getPastCovers: function (t, e) {
            $.ajax({
                url: ["/x/cgicmem?type=2&key=", COVER_INFO.columnid, "_", t].join(""),
                dataType: "html",
                timeout: 1e4
            }).done(function (i) {
                if (i && i.length > 0 && i.indexOf("<!DOCTYPE") == -1) {
                    n.children().hide(), n.append(i);
                    var a = $("#my_year_" + t);
                    return l.showPlaynum(a), r || l.showCurrentCid(a), void(e && e(!0))
                }
                e && e(!1)
            }).fail(function () {
                e && e(!0)
            })
        }, setDisplay: function (t, e) {
            var i = n.children().filter("#my_year_" + t);
            0 == i.size() ? l.getPastCovers(t, e) : (n.children().hide(), $("#my_year_" + t).show(), e && e(!0))
        }, showCurrentCid: function (t) {
            var e = t.find("[data-cid='" + COVER_INFO.id + "']");
            e.size() > 0 && (e.addClass("current"), r = !0)
        }, showPlaynum: function (t) {
            var e = [];
            t.find(".list_item").each(function () {
                e.push($(this).attr("data-cid"))
            });
            var i = 30;
            if (e.length > i)for (var n = 0; n < Math.ceil(e.length / i); n++) {
                var a = n * i, o = (n + 1) * i;
                o = o > e.length ? e.length : o, l.getCoverPlaynum(e.slice(a, o))
            } else e.length > 0 && l.getCoverPlaynum(e)
        }, getCoverPlaynum: function (t) {
            s.getCovers(t, function (t) {
                for (var e = 0; e < t.length; e++)if (t[e].fields) {
                    var i = t[e].id, o = n.find("[data-cid='" + i + "']").find(".num"), r = t[e].fields.view_all_count, c = a.formatNum(r);
                    o.size() > 0 && o.html(c), i == COVER_INFO.id && s.sameCover(r)
                }
            })
        }
    };
    t.exports = Reve.component("c-side-columns", {
        ready: function () {
            if (n = $("#mod_column_year"), 0 == n.size())return void setTimeout(function () {
                o.emit("switchSideTo", 13)
            }, 0);
            setTimeout(function () {
                o.emit("switchSideTo", 12)
            }, 0);
            var t = !0;
            o.on("switchSide", function (e) {
                t && "columns" == e && (l.showPlaynum(n), t = !1)
            }), l.showCurrentCid(n), l.bindTabEvent()
        }, methods: {}
    })
}, function (t, e, i) {
    function n(t, e) {
        $.ajax({
            url: "//union.video.qq.com/fcgi-bin/data?otype=json&tid=595&appid=10001007&appkey=e075742beb866145&idlist=" + t,
            dataType: "jsonp"
        }).done(function (i) {
            if (0 == i.errorno && i.results && i.results[0] && 0 == i.results[0].retcode) {
                var n = i.results[0].fields;
                n.upload_qq_info ? (n.upload_qq_info = JSON.parse(n.upload_qq_info), n.upload_qq_info = n.upload_qq_info && n.upload_qq_info.info, e(null, n)) : $.ajax({
                        url: "//c.v.qq.com/vuserinfoget?vid=" + t + "&quin=" + n.upload_qq + "&fields=count%7Cbiz&otype=json",
                        dataType: "jsonp"
                    }).done(function (t) {
                        "o" == t.s && 0 == t.em && (n.upload_qq_info = t.info), e(null, n)
                    }).fail(function (t) {
                        e(null, n)
                    })
            } else e(i)
        }).fail(function (t) {
            e(t)
        })
    }

    function a(t, e) {
        $.ajax({
            url: "//v.qq.com/x/cgibaike?id=" + (10 == COVER_INFO.typeid ? COVER_INFO.columnid : COVER_INFO.id) + "&title=" + t + "&type=" + COVER_INFO.typeid,
            dataType: "html"
        }).done(e)
    }

    var o = i(37), s = window.PageMsg, r = i(12), c = i(38), l = i(39), d = i(40), p = i(41);
    t.exports = Reve.component("c-desc", {
        data: function () {
            return {
                videoTitle: "",
                showdesc: !1,
                ismac: !1,
                hasuploader: !!window.VPP_INFO.euin,
                needPresenter: +!(10 != COVER_INFO.typeid || !COVER_INFO.columnid),
                curVideo: {}
            }
        }, ready: function () {
            function t(t) {
                n(t.vid, function (i, n) {
                    if (!i) {
                        if (1 == COVER_INFO.typeid) e.$set("isMovie", n.category_map && n.category_map[0] && n.category_map.indexOf(10139) != -1), $(e.$el).find("._video_title").html(n.title || n.c_title_output); else if (2 == COVER_INFO.typeid) (n.category_map.indexOf("正片") != -1 || n.episode > 0 && n.category_map.indexOf("预告片") != -1) && (n.title = r.episodeTitle({
                            title: COVER_INFO.title,
                            type: COVER_INFO.typeid
                        }, n)); else if (3 == COVER_INFO.typeid) n.title = r.cartoonTitle(n, {
                            title: COVER_INFO.title,
                            series_num: COVER_INFO.series_num,
                            series_name: COVER_INFO.series_name,
                            list_show_style: COVER_INFO.list_show_style,
                            digital_mode: COVER_INFO.digital_mode
                        }); else if (10 == COVER_INFO.typeid); else {
                            9 == COVER_INFO.typeid && e.$set("hasDesc", !!n.desc && 0 != n.desc.length);
                            var a = $(e.$el).find("#_video_tags_o");
                            a.html(o(e, d, {vipPage: VIP_PAGE, video: n}))
                        }
                        var c = $(e.$el).find("._video_user");
                        6 != n.upload_src ? (n.upload_qq_info = {}, e.$set("hasuploader", !1)) : (n.upload_qq_info = n.upload_qq_info || {}, e.$set("hasuploader", !0), c.html(o(e, l, {
                                video: n,
                                type: COVER_INFO.typeid
                            }))), s.emit("uploaderChanged", {vid: t.vid, info: n.upload_qq_info}), e.$set("curVideo", n)
                    }
                })
            }

            var e = this;
            this.$set("ismac", txv.ua.macs), s.wait("vidChanged", function () {
                t.apply(this, arguments), s.on("vidChanged", t)
            }), [2, 10].indexOf(+COVER_INFO.typeid) != -1 && a(COVER_INFO.title || VIDEO_INFO.title, function (t) {
                if (t.length < 1e3) {
                    for (var i = $(t), n = i.find("img"), a = 0; a < n.length; a++)n.eq(a).attr("src", r.imgUrl(n.eq(a).attr("src")));
                    $(e.$el).find(".video_detail").append(i)
                }
            }), setTimeout(function () {
                if (txv.ua.macs) p($(e.$el).find('.mod_ad a[data-id="macdown"]'), !0); else {
                    var t, i = $(e.$el).find('.mod_ad a[data-id="down"]');
                    i.each(function () {
                        var e = $(this);
                        if (txv.clipboard) {
                            var i = e.attr("href");
                            txv.clipboard.to({
                                el: this, text: "qqlivechannel=channel1.vad", click: function () {
                                    location.href = i
                                }
                            })
                        }
                        t = e
                    }), p(t)
                }
            }, 2e3)
        }, methods: {
            opendesc: function () {
                clearTimeout(this.hidetimeout), 1 == this.$data.needPresenter && this.loadPresenter(), this.$set({showdesc: !0})
            }, closedesc: function () {
                var t = this;
                this.hidetimeout = setTimeout(function () {
                    t.$set({showdesc: !1})
                }, 200)
            }, loadPresenter: function () {
                if (0 != this.$data.needPresenter) {
                    var t = this;
                    t.$set({needPresenter: 0}), $.ajax({
                        url: "//union.video.qq.com/fcgi-bin/data?tid=609&appid=10001007&appkey=e075742beb866145&otype=json",
                        data: {idlist: COVER_INFO.columnid},
                        dataType: "jsonp"
                    }).done(function (e) {
                        if (0 == e.errorno && e.results && e.results[0] && 0 == e.results[0].retcode) {
                            var i = e.results[0].fields;
                            $(t.$el).find("._presenter").html(o(t, c, {
                                cover: {
                                    column: {
                                        presenter: i.presenter,
                                        presenter_id: i.presenter_id
                                    }
                                }
                            })), t.$set({needPresenter: -1})
                        }
                    })
                }
            }
        }
    })
}, function (t, e, i) {
    var n = i(13), a = {}, o = function (t, e, i, o) {
        var s = n.extend(n.escape.bind(n), a, o);
        return t.$compile(e(n.extend({}, i, {_: s})))
    };
    o.to = function (t) {
        var e = o.apply(this, arguments);
        return t.appendChild(e), e
    }, o.replace = function (t) {
        var e = o.apply(this, arguments);
        if (!t.parentNode)throw Error("target element without parentNode.");
        return t.parentNode.replaceChild(e, t), e
    }, o.helper = function (t, e) {
        return a[t] = e, this
    }, o.helpers = function (t) {
        return n.extend(a, t), this
    }, t.exports = o
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<span class="label">主持人：</span>' + cover.column.presenter.map(function (t, e) {
                return '<a _stat="desc:people"\n               target="_blank"\n               title="' + _(t) + '"\n               href="' + _.peopleHref(t, cover.column.presenter_id[e]) + '">' + _(t) + "</a>"
            }).join("/") + "\n"
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + (function () {
                if (video.upload_qq_info.euin)return '\n<a href="' + video.upload_qq_info.urlfull + '" target="_blank" class="user_info">\n    <img class="user_avatar" src="' + _.imgUrl(video.upload_qq_info.avatar) + '">\n    <span class="user_name">' + video.upload_qq_info.nick + '</span>\n</a>\n<a href="javascript:" class="btn_book" r-subscribe="' + video.upload_qq_info.euin + '" r-attr="{title: follow' + video.upload_qq_info.euin + " ? '取消订阅' : '订阅'}\">\n    <span class=\"btn_txt\" r-text>{follow" + video.upload_qq_info.euin + " ? '已订阅' : '订阅'}</span>\n    " + (function () {
                        if (video.upload_qq_info.count1)return '<span class="num">' + _.formatNum(video.upload_qq_info.count1) + "</span> "
                    }() || "") + "\n</a>\n" + (function () {
                        if ([1, 2, 3, 10].indexOf(type) == -1)return '<span class="tag_item">' + _.formatDate(video.video_checkup_time, "yyyy年MM月dd日发布") + "</span>"
                    }() || "") + "\n"
            }() || "") + "\n"
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<span class="tag_item">' + _.formatDate(video.video_checkup_time, "yyyy年MM月dd日发布") + "</span>\n" + (function () {
                if (vipPage)return '\n<a _stat="description:tag" href="http://film.qq.com" target="_blank" class="tag_item hl">VIP</a>\n'
            }() || "") + "\n" + (function () {
                return video.pioneer_tag && video.pioneer_tag.length ? "\n" + video.pioneer_tag.split("+").slice(0, 7).map(function (t) {
                        return '<a _stat="description:tag"\n               href="http://v.qq.com/x/search/?stag=txt.playpage.vppdesc&q=' + encodeURIComponent(_(t)) + '"\n               target="_blank"\n               title="' + _(t) + '"\n               class="tag_item">' + _(t) + "</a>"
                    }).join(" ") + "\n" : video.tag && video.tag.length ? "\n" + video.tag.slice(0, 7).map(function (t) {
                            return '<a  _stat="description:tag"\n                href="http://v.qq.com/x/search/?stag=txt.playpage.vppdesc&q=' + encodeURIComponent(_(t)) + '"\n                target="_blank"\n                title="' + _(t) + '"\n                class="tag_item">' + _(t) + "</a>"
                        }).join(" ") + "\n" : void 0
            }() || "") + "\n"
    }
}, function (t, e) {
    t.exports = function (t, e) {
        var i = function (i) {
            var n = "";
            $.each(i, function (t, i) {
                var a = i && (e ? i.snap_pic : i.pic_url);
                a && (n += '<img src="' + a.replace(/^https?:/, "") + '" alt="' + i.title + '" class="none">');
            }), t.html(n);
            var a = t.find("img"), o = 0;
            a.eq(o).removeClass("none"), setInterval(function () {
                a.eq(o).addClass("none"), o++, o > a.length - 1 && (o = 0), a.eq(o).removeClass("none")
            }, 3e3)
        };
        $.ajax({
            url: "//data.v.qq.com/videocms/getNewsvideoList.php",
            data: {ref: "pclient", appkey: "6UkwV9DeHr9_PC", vsite: "vshou", ename: "download_banner_pc"},
            success: function (t) {
                var e = t && t.data && t.data.content;
                e.length > 0 && i(e.sort(function () {
                    return Math.random() - .5
                }))
            },
            dataType: "jsonp"
        })
    }
}, function (t, e, i) {
    var n = window.PageMsg, a = i(43);
    t.exports = Reve.component("c-side-active", {
        ready: function () {
            n.on("tvp-ready", function (t) {
                function e() {
                    a.showList(!0, {mid: +i, type: +n})
                }

                var i = txv.util.getUrlParam("markid"), n = txv.util.getUrlParam("mtype");
                i && n ? (txv.login.removeReadyCallback(e), txv.login.addReadyCallback(e)) : a.showList(), a.justWatchTAReset()
            }), n.on("vidChanged", function (t) {
                a.showList(null, null, t), a.justWatchTAReset()
            })
        }, methods: {}
    })
}, function (t, e, i) {
    var n, a, o = window.PageMsg, s = i(15), r = {
        TIMETOSHOWVOTE: "active_1",
        APPLE_CUSTOMER: "active_2",
        GOODSSHOW: "active_3",
        VOTESHOW: "active_5",
        PROPSSHOW: "active_6",
        WATCHANDBUYSHOW: "active_7",
        VOTEPROPSHOW: "active_8",
        BOXSHOW: "active_9"
    }, c = $("#mod_active_content"), l = ($("#mod_active_tab"), {
        NORMAL: 1,
        GOODS: 4,
        PROPS: 32,
        VOTE_TEXT: 16384,
        VOTE_GUESS: 32768,
        VOTE_GUESS_ANSWER: 65536,
        PK_TOPIC: 192,
        VOTE_TEXT_GUESS: 384,
        VOTE_PIC: 320,
        VOTE_PIC_GUESS: 448,
        VOTE_TEXT_ANSWER: 576,
        VOTE_PIC_ANSWER: 640,
        WATCH_AND_BUY: 768,
        VOTE_PROP: 960,
        BOX: 1216
    }), d = function (t, e) {
        var i = function (t, e) {
            return 1 == t ? t == e : t == e || t - 1 == e
        };
        if ($.isArray(e)) {
            var n = !1;
            return $.each(e, function (e, a) {
                if (i(t, a))return n = !0, !1
            }), n
        }
        return i(t, e)
    }, p = function (t, e) {
        var i = !1;
        return $.each(e, function (e, n) {
            if ($.inArray(n, t) != -1 || $.inArray(n + 1, t) != -1)return i = !0, !1
        }), i
    }, u = {
        page: '<div class="scroll_wrap scroll_wrap_indie" id="mod_active_page"></div>',
        pageScroll: '<div class="scroll_wrap scroll_wrap_indie" id="mod_active_scroll"></div>',
        error: '<div class="scroll_wrap scroll_wrap_indie"><div class="mod_loading_tips"><div class="mod_content"><i class="iconfont icon_warning">&#x1003;</i><div class="tip_text">加载失败</div><a href="javascript:;" class="btn_retry" id="error_tips">点击重试</a></div></div></div>'
    }, _ = !1, f = !1, v = !1, m = !1, h = !1, g = !1, y = !1, w = !1, x = [], b = {
        url: {getMark: "//ncgi.video.qq.com/fcgi-bin/livemark/get_video_mark?otype=json&pr=1&callback=?&idlist={vid}"},
        showCommon: function () {
            var t = $("#fullplaylist");
            t.find("#_lottery_winlist").remove(), t.find("#_box_result").remove()
        },
        showPage: function () {
            b.showCommon(), c.html(u.page)
        },
        showPageScroll: function () {
            b.showCommon(), c.html(u.pageScroll)
        },
        showError: function () {
            b.showCommon(), c.html(u.error)
        },
        getSeajs: function (t) {
            s("//vm.gtimg.cn/tencentvideo/script/txv.sea.js", function () {
                t && t()
            })
        },
        showList: function (t, e, i) {
            if (i ? (a = i, n = i.vid) : (a = VIDEO_INFO, n = VIDEO_INFO.vid), "0" != a.showMark) {
                var s = b.url.getMark.replace(/\{vid\}/, n);
                $.get(s, function (i) {
                    x = [];
                    var a = [], s = [l.GOODS, l.PROPS, l.VOTE_TEXT, l.VOTE_GUESS, l.PK_TOPIC, l.VOTE_TEXT_GUESS, l.VOTE_PIC, l.VOTE_PIC_GUESS, l.WATCH_AND_BUY, l.VOTE_PROP, l.BOX];
                    if (0 == i.errorno && i.results[0].fields.length > 0) {
                        var r = i.results[0].fields[0].videotag;
                        if (r.length > 0 && null != r[0]) {
                            var c = r[0].ts.t[0];
                            if (c.length > 0)for (var u = 0; u < c.length; u++)if ($.inArray(c[u].cate, a) == -1 && a.push(c[u].cate), $.inArray(c[u].cate, s) != -1 || $.inArray(c[u].cate - 1, s) != -1) {
                                var _ = c[u].gds[0];
                                _.play_cate = c[u].cate, _.play_mid = c[u].did, _.play_mtime = c[u].pt / 1e3, _.play_title = c[u].ti, c[u].exts && c[u].exts.length > 0 && (_.play_exts = c[u].exts[0]);
                                for (var f = !0, v = 0; v < x.length; v++)if (x[v].play_mtime == _.play_mtime) {
                                    f = !1;
                                    break
                                }
                                f && x.push(c[u].gds[0])
                            }
                        }
                    }
                    VIDEO_INFO.mark = x, x.length > 0 ? b.getSeajs(function () {
                            seajs.use("module/template", function () {
                                seajs.use("module/activelist", function (e) {
                                    t || (b.showPageScroll(), e.init({vid: n, message: o}));
                                    for (var i = !1, a = 0, s = x.length; a < s; a++)if (!d(x[a].play_cate, l.WATCH_AND_BUY) && !d(x[a].play_cate, l.BOX)) {
                                        i = !0;
                                        break
                                    }
                                    i ? o.emit("switchSideTo", 10) : o.emit("switchSideTo", -1), g || (o.on("active_switch", function (t) {
                                        switch (t.type) {
                                            case"list":
                                                "0" == t.openlist && o.emit("switchSideTo", -2), b.showPageScroll(), e.init({
                                                    vid: n,
                                                    message: o
                                                });
                                                break;
                                            case"error":
                                                b.showError(), $("#error_tips").bind("click", function () {
                                                    for (var e = [{
                                                        mark: l.VOTE_TEXT,
                                                        type: "vote_text"
                                                    }, {
                                                        mark: l.VOTE_GUESS,
                                                        type: "vote_guess"
                                                    }, {
                                                        mark: l.VOTE_GUESS_ANSWER,
                                                        type: "vote_pub_answ"
                                                    }, {mark: l.GOODS, type: "goods"}, {
                                                        mark: l.PK_TOPIC,
                                                        type: "pk_topic"
                                                    }, {mark: l.VOTE_PIC, type: "vote_pic"}, {
                                                        mark: l.VOTE_TEXT_GUESS,
                                                        type: "vote_text_guess"
                                                    }, {
                                                        mark: l.VOTE_PIC_GUESS,
                                                        type: "vote_pic_guess"
                                                    }, {
                                                        mark: l.VOTE_TEXT_ANSWER,
                                                        type: "vote_text_answ"
                                                    }, {
                                                        mark: l.VOTE_PIC_ANSWER,
                                                        type: "vote_pic_answ"
                                                    }, {
                                                        mark: l.VOTE_PROP,
                                                        type: "vote_prop"
                                                    }], i = 0, n = e.length; i < n; i++)if (d(t.info.play_cate, e[i].mark)) {
                                                        o.emit("active_switch", {type: e[i].type, info: t.info});
                                                        break
                                                    }
                                                })
                                        }
                                    }), g = !0)
                                });
                                var i = null, s = 0;
                                if (t && e && e.mid) {
                                    for (var r = 0, c = x.length; r < c; r++)if (x[r].play_mid == e.mid) {
                                        i = x[r];
                                        break
                                    }
                                    s = e.type
                                }
                                p(a, [l.GOODS]) && b.goodsActions(), p(a, [l.VOTE_TEXT, l.PK_TOPIC, l.VOTE_PIC]) && b.voteTextActions(d(s, [l.VOTE_TEXT, l.PK_TOPIC, l.VOTE_PIC]) ? i : null), p(a, [l.VOTE_GUESS, l.VOTE_TEXT_GUESS, l.VOTE_PIC_GUESS]) && b.voteGuessActions(d(s, [l.VOTE_GUESS, l.VOTE_TEXT_GUESS, l.VOTE_PIC_GUESS]) ? i : null), p(a, [l.VOTE_GUESS_ANSWER, l.VOTE_TEXT_ANSWER, l.VOTE_PIC_ANSWER]) && b.votePubAnswActions(), p(a, [l.PROPS]) && b.propsActions(d(s, l.PROPS) ? i : null), p(a, [l.WATCH_AND_BUY]) && b.watchAndBuyActions(), p(a, [l.VOTE_PROP]) && b.votePropActions(d(s, l.VOTE_PROP) ? i : null), p(a, [l.BOX]) && b.boxActions()
                            })
                        }) : o.emit("switchSideTo", -1)
                }, "json")
            } else o.emit("switchSideTo", -1)
        },
        goodsActions: function () {
            seajs.use("module/activegoods", function (t) {
                f || (o.on(r.GOODSSHOW, function (e) {
                    switch (e.action) {
                        case"click":
                            var i = 0 == $("#active_" + e.info.play_cate + "_" + e.info.play_mid).size();
                            i && (b.showPageScroll(), t.params.mark = e.info, t.params.mark.openlist = 0, t.init({
                                video: a,
                                message: o
                            })), o.emit("switchSideTo", 10, !0);
                            break;
                        case"close":
                            b.flashCloseAction()
                    }
                }, !1), o.on("active_switch", function (e) {
                    switch (e.type) {
                        case"goods":
                            b.showPageScroll(), t.params.mark = e.info, t.params.mark.openlist = 1, t.init({
                                video: a,
                                message: o
                            })
                    }
                }), f = !0)
            })
        },
        voteTextActions: function (t) {
            seajs.use("module/activevote.normal", function (e) {
                t && (b.showPage(), e.params.mark = t, e.params.mark.openlist = 1, e.init({
                    video: a,
                    message: o
                }), o.emit("switchSideTo", 10, !0)), _ || (o.on("active_switch", function (t) {
                    switch (t.type) {
                        case"vote_text":
                        case"pk_topic":
                        case"vote_pic":
                            b.showPage(), e.params.mark = t.info, e.params.mark.openlist = 1, e.init({
                                video: a,
                                message: o
                            }), o.emit("switchSideTo", 10, !0)
                    }
                }), o.on(r.VOTESHOW, function (t) {
                    t.info && t.info.play_cate && d(+t.info.play_cate, [l.VOTE_TEXT, l.PK_TOPIC, l.VOTE_PIC]) && b.voteCommon(e, t)
                }), _ = !0)
            })
        },
        voteGuessActions: function (t) {
            seajs.use("module/activevote.guess", function (e) {
                t && (b.showPage(), e.params.mark = t, e.params.mark.openlist = 1, e.init({
                    video: a,
                    message: o
                }), o.emit("switchSideTo", 10, !0)), v || (o.on("active_switch", function (t) {
                    switch (t.type) {
                        case"vote_guess":
                        case"vote_text_guess":
                        case"vote_pic_guess":
                            b.showPage(), e.params.mark = t.info, e.params.mark.openlist = 1, e.init({
                                video: a,
                                message: o
                            }), o.emit("switchSideTo", 10, !0)
                    }
                }), o.on(r.VOTESHOW, function (t) {
                    t.info && t.info.play_cate && d(+t.info.play_cate, [l.VOTE_GUESS, l.VOTE_TEXT_GUESS, l.VOTE_PIC_GUESS]) && b.voteCommon(e, t)
                }), v = !0)
            })
        },
        flashCloseAction: function (t) {
            txv.playpg.runActions(txv.ACTION.SWITCHTAB_IFRAME, {type: "list", openlist: 0})
        },
        voteCommon: function (t, e) {
            var i = 0 == $("#active_" + e.info.play_cate + "_" + e.info.play_mid).size();
            switch (e.action) {
                case"show":
                    i && (b.showPage(), t.params.mark = e.info, t.params.mark.openlist = 0, t.init({
                        video: a,
                        message: o
                    })), o.emit("switchSideTo", 10, !0);
                    break;
                case"vote":
                    i && (b.showPage(), t.params.mark = e.info, t.params.mark.openlist = 0, t.init({
                        video: a,
                        message: o
                    })), o.emit("switchSideTo", 10, !0), "function" == typeof t.blink && t.blink();
                    break;
                case"close":
                    b.flashCloseAction()
            }
        },
        votePubAnswActions: function () {
            seajs.use("module/activevote.pubanswer", function (t) {
                m || (o.on("active_switch", function (e) {
                    switch (e.type) {
                        case"vote_pub_answ":
                        case"vote_text_answ":
                        case"vote_pic_answ":
                            b.showPage(), t.params.mark = e.info, t.params.mark.openlist = 1, t.init({
                                video: a,
                                message: o
                            }), o.emit("switchSideTo", 10, !0)
                    }
                }), o.on(r.VOTESHOW, function (e) {
                    switch (e.action) {
                        case"show_ans":
                            b.showPage(), t.params.mark = e.info, t.params.mark.openlist = 0, t.init({
                                video: a,
                                message: o
                            }), o.emit("switchSideTo", 10, !0)
                    }
                }), m = !0)
            })
        },
        propsActions: function (t) {
            seajs.use("module/activeprops", function (e) {
                t && (b.showPageScroll(), e.params.mark = t, e.params.mark.openlist = 1, o.emit("switchSideTo", 10, !0), e.init({
                    vid: n,
                    message: o
                })), h || (o.on("active_switch", function (t) {
                    switch (t.type) {
                        case"props":
                            b.showPageScroll(), e.params.mark = t.info, e.params.mark.openlist = 1, e.init({
                                vid: n,
                                message: o
                            }), o.emit("switchSideTo", 10, !0)
                    }
                }), o.on(r.PROPSSHOW, function (t) {
                    switch (t.action) {
                        case"show":
                            var i = 0 == $("#active_" + t.info.play_cate + "_" + t.info.play_mid).size();
                            i && (b.showPageScroll(), e.params.mark = t.info, e.params.mark.openlist = 0, e.init({
                                vid: n,
                                message: o
                            })), o.emit("switchSideTo", 10, !0);
                            break;
                        case"person":
                            o.emit("switchSideTo", 10, !0);
                            var i = 0 == $("#active_" + t.info.play_cate + "_" + t.info.play_mid).size();
                            i ? (b.showPageScroll(), e.params.mark = t.info, e.params.mark.openlist = 0, e.init({
                                    vid: n,
                                    message: o
                                }, !0)) : e.giveProps();
                            break;
                        case"close":
                            b.flashCloseAction()
                    }
                }), h = !0)
            })
        },
        boxActions: function () {
            seajs.use("module/activebox", function (t) {
                o.on("active_switch", function (e) {
                    switch (e.type) {
                        case"box":
                            "obtain" == e.oper && (o.emit("switchSideTo", 10, !0), t.params.mark = e.info, t.params.mark.openlist = 1, t.obtain({
                                vid: n,
                                message: o
                            }))
                    }
                }), o.on(r.BOXSHOW, function (e) {
                    switch (e.action) {
                        case"show":
                            seajs.use("module/activelist", function (t) {
                                t.showBox(e.info)
                            }), o.emit("switchSideTo", 10, !0);
                            break;
                        case"obtain":
                            return t.params.mark = e.info, t.params.mark.openlist = 0, t.obtain({
                                vid: n,
                                message: o
                            }), o.emit("switchSideTo", 10, !0), o.emit("active_switch", {
                                type: "box",
                                oper: "remove"
                            }, !0), !0
                    }
                })
            })
        },
        watchAndBuyActions: function () {
            window.__flashplayer_watchAndBuyList = function (t) {
                var e = function (t, e, i) {
                    t = t.replace(/^http:\/\//g, "//"), seajs.use(t, function (t) {
                        b.showPageScroll(), t.show("mod_active_scroll", i, function () {
                            window.PLAYER && window.PLAYER.callPlayerExtendMethod("relevanceAd_close"), o.emit("active_switch", {
                                type: "list",
                                openlist: e
                            })
                        }), o.emit("switchSideTo", 10, !0)
                    })
                }, i = 0, n = 0, a = 0;
                $.each(VIDEO_INFO.mark, function (e, o) {
                    d(o.play_cate, l.WATCH_AND_BUY) ? (t && t[i] && t[i].params && t[i].params.watch_buy && (o.order = t[i].params.watch_buy, o.order.link = t[i].link, o.order.order_id = t[i].order_id, a++), i++) : d(o.play_cate, l.BOX) || n++
                }), 0 == n && 0 == a ? o.emit("switchSideTo", -1) : (o.emit("switchSideTo", 10), seajs.use("module/activelist", function (t) {
                        t.showAD()
                    })), y || (o.on("active_switch", function (t) {
                    switch (t.type) {
                        case"watch_buy":
                            t && t.info && t.info.order && t.info.order.detail_url && e(t.info.order.detail_url, 1, {
                                link: t.info.order.link,
                                order_id: t.info.order.order_id
                            })
                    }
                }), o.on(r.WATCHANDBUYSHOW, function (t) {
                    switch (t.action) {
                        case"click":
                            t.watch && t.watch.params && t.watch.params.watch_buy && t.watch.params.watch_buy.detail_url && e(t.watch.params.watch_buy.detail_url, 0, {
                                link: t.watch.link,
                                order_id: t.watch.order_id
                            });
                            break;
                        case"close":
                            b.flashCloseAction()
                    }
                }), y = !0)
            }, window.PLAYER && window.PLAYER.callPlayerExtendMethod("watchAndBuyList")
        },
        votePropActions: function (t) {
            seajs.use("module/activevote.prop", function (e) {
                var i = function (t, i) {
                    var a;
                    return $.each(VIDEO_INFO.mark, function (e, i) {
                        d(i.play_cate, l.VOTE_PROP) && i.bt == t.bt && (a = i)
                    }), 0 == $("#active_" + t.play_cate + "_" + t.play_mid).size() && (b.showPage(), e.params.mark = a, e.params.mark.openlist = i, e.init({
                        vid: n,
                        message: o
                    })), o.emit("switchSideTo", 10, !0), a
                };
                e.loadRankData().then(function () {
                    t && i(t, 1), w || (o.on("active_switch", function (t) {
                        switch (t.type) {
                            case"vote_prop":
                                i(t.info, 1)
                        }
                    }), o.on(r.VOTEPROPSHOW, function (t) {
                        switch (t.action) {
                            case"show":
                                var e = i(t.info, 0);
                                window.PLAYER && window.PLAYER.callPlayerExtendMethod("setItemVoteCount", e.rank_total_format ? e.rank_total_format : 0);
                                break;
                            case"vote":
                                i(t.info, 0);
                                break;
                            case"close":
                                b.flashCloseAction()
                        }
                    }), w = !0)
                })
            })
        }
    };
    b.justWatchTAReset = function () {
        $("#active_mod_viewstars").remove()
    }, window.__flashplayer_justwatchTAInfoArray = function (t) {
        var e = [];
        window.__flashplayer_justwatchTASelect = function (t, i) {
            e.push([t, i])
        }, b.getSeajs(function () {
            seajs.use("module/template", function () {
                seajs.use("module/active.watchta", function (i) {
                    i.dataReady(t, window.PLAYER), window.__flashplayer_justwatchTASelect = i.select;
                    for (var n = 0, a = e.length; n < a; n++)i.select(e[n][0], e[n][1])
                })
            })
        })
    }, t.exports = b
}, function (t, e) {
    var i = window.PageMsg;
    t.exports = Reve.component("c-prevue", {
        ready: function () {
            var t = !0, e = this;
            i.on("switchSide", function (i) {
                t && "prevue" == i && (e.showPrice(), t = !1)
            });
            var n = $(this.$el);
            n.find(".show_more").click(function () {
                n.find("li.none").removeClass("none"), $(this).remove()
            })
        }, methods: {
            showPrice: function () {
                var t = $(this.$el).find("[data-fid]").map(function () {
                    return $(this).attr("data-fid")
                }).get().join(",");
                this.getCheapTicketInfo(t, function (t) {
                    0 == t.retcode && t.results && $.each(t.results, function (t, e) {
                        $("#mod_prevue_on_" + t).html("购票（" + e.price / 100 + "元起）")
                    })
                })
            }, getCheapTicketInfo: function (t, e) {
                if (t) {
                    var i = {film_id: t, otype: "json"};
                    if (txv.cookie && txv.cookie.get("piao.l")) {
                        var n = decodeURIComponent(txv.cookie.get("piao.l")).split("|");
                        n[0] && "0" !== n[0] && (i.city_id = n[0]), n[1] && "0" !== n[1] && (i.area_id = n[1])
                    }
                    $.ajax({
                        url: "//ticketapi.video.qq.com/theater_cheap",
                        dataType: "jsonp",
                        data: i
                    }).done(e).fail(function () {
                        return "error"
                    })
                }
            }
        }
    })
}, function (t, e, i) {
    var n = window.PageMsg;
    render = i(37);
    var a, o, s, r = i(46), c = {
        cgiurl: "//s.video.qq.com/srh_music?id={id}&num=6&plat=2&album_num=2&srcid=1&otype=json",
        qqPlayerjs: "//imgcache.gtimg.cn/music/js/module/qplayer.js"
    }, l = !1, d = {
        reportToTDB: function (t, e) {
            var i = "//ncgi.video.qq.com/report/search?";
            e = e || {}, e.action = 256, e.ival = 2, e.ival2 = e.ival2 || 2, e.sval5 = COVER_INFO.id, e.sval6 = COVER_INFO.title || "";
            var n = $.param(e), a = [i, n, "&_=", Math.ceil(1e3 * Math.random())].join("");
            t ? txv.lazyreport.push(a) : txv.report(a)
        }, initQPlayer: function () {
            var t = $.qPlayer;
            t.init({fromTag: 44, useQzoneMusic: !1}), t.on("timeupdate", function (t) {
                if (t.currentTime == t.totalTime) {
                    var e = o.find(".current"), i = !1;
                    l && 0 == e.size() && (e = s.find(".current"), i = !0), e.size() > 0 && d.reportToTDB(!1, {
                        ival1: 3,
                        ival2: i ? 2 : 5,
                        sval: e.attr("data-songid"),
                        sval1: e.attr("data-sname") || "",
                        sval2: e.attr("data-aid"),
                        sval3: e.attr("data-amid") || "",
                        sval4: e.attr("data-aname") || ""
                    })
                }
            }), n.on("tvp-resume", function () {
                t.pause(), o.find(".current").removeClass("current").addClass("pause"), l && s.find(".current").removeClass("current").addClass("pause")
            }), n.on("switchSide", function (t) {
                "qqmusic" == t && d.reportToTDB(!1, {ival1: 1})
            }), n.on("vidChanged", function (e) {
                t.stop(), d.stopPlay()
            }), l && d.binEvents(s, t), d.binEvents(o, t)
        }, stopPlay: function () {
            o.find("._control_line").removeClass("current pause"), l && s.find("._control_line").removeClass("current pause")
        }, binEvents: function (t, e) {
            t.find("._mode_play").on("click", function (t) {
                t.preventDefault();
                var i = $(this), a = i.parents("._control_line"), o = !0;
                if (a.hasClass("current") ? (e.pause(), a.removeClass("current").addClass("pause"), o = !1) : a.hasClass("pause") ? (n.emit("tvp-pause"), e.play(), d.stopPlay(), a.addClass("current")) : (n.emit("tvp-pause"), e.play({
                                list: [{songurl: a.attr("data-url")}],
                                isPlay: !0,
                                mode: 1
                            }), d.stopPlay(), a.addClass("current")), o) {
                    var s = i.parents("#mod_qqmusic_content").size() > 0;
                    d.reportToTDB(!1, {
                        ival1: 2,
                        ival2: s ? 2 : 5,
                        sval: a.attr("data-songid"),
                        sval1: a.attr("data-sname") || "",
                        sval2: a.attr("data-aid"),
                        sval3: a.attr("data-amid") || "",
                        sval4: a.attr("data-aname") || ""
                    })
                }
            }), t.find("._mode_down").on("click", function (t) {
                t.preventDefault();
                var e = $(this), i = e.parents("._control_line"), n = e.parents("#mod_qqmusic_content").size() > 0;
                r.show({
                    render: render,
                    that: a,
                    title: COVER_INFO.title || "",
                    coverType: COVER_INFO.typeid,
                    ival2: n ? 2 : 5,
                    sval: i.attr("data-songid"),
                    sval1: i.attr("data-sname") || "",
                    sval2: i.attr("data-aid"),
                    sval3: i.attr("data-amid") || "",
                    sval4: i.attr("data-aname") || ""
                }), d.reportToTDB(!1, {
                    ival1: 7,
                    ival2: n ? 2 : 5,
                    sval: i.attr("data-songid"),
                    sval1: i.attr("data-sname") || "",
                    sval2: i.attr("data-aid"),
                    sval3: i.attr("data-amid") || "",
                    sval4: i.attr("data-aname") || ""
                })
            }), t.find("._mode_mv").on("click", function (t) {
                var e = $(this), i = e.parent(), n = e.parents("#mod_qqmusic_content").size() > 0;
                d.reportToTDB(!1, {
                    ival1: 4,
                    ival2: n ? 2 : 5,
                    sval: i.attr("data-songid"),
                    sval1: i.attr("data-sname") || "",
                    sval2: i.attr("data-aid"),
                    sval3: i.attr("data-amid") || "",
                    sval4: i.attr("data-aname") || "",
                    sval7: e.attr("data-mv")
                })
            })
        }, getMusicInfo: function () {
            var t = $.Deferred(), e = COVER_INFO.id;
            return $.ajax({
                url: c.cgiurl.replace(/\{id\}/, e),
                type: "get",
                dataType: "jsonp",
                timeout: 1e4,
                CSRF: !0,
                success: function (e) {
                    t.resolve(e)
                }
            }), t.promise()
        }, getQQPlayer: function () {
            var t = $.Deferred();
            return $.getScript(c.qqPlayerjs, function () {
                t.resolve()
            }), t.promise()
        }
    };
    t.exports = Reve.component("c-qqmusic", {
        ready: function () {
            a = this, d.getMusicInfo().done(function (t) {
                if (t && t.head && 0 == t.head.error && t.result_list && t.result_list.length > 0) {
                    var e = t.result_list[0];
                    if (e.song_list && e.song_list.length > 0) {
                        var n = {list: e}, s = i(48), r = render(a, s, n);
                        o = $(a.$el), o.html(r), o.show(), d.getQQPlayer().done(function () {
                            d.initQPlayer()
                        })
                    }
                }
            })
        }, methods: {}
    })
}, function (t, e, i) {
    var n = {
        reportToTDB: function (t, e) {
            var i = "//ncgi.video.qq.com/report/search?";
            e = e || {}, e.action = 256, e.ival = 2, e.ival2 = e.ival2 || 2, e.sval5 = COVER_INFO.id, e.sval6 = COVER_INFO.title || "";
            var n = $.param(e), a = [i, n, "&_=", Math.ceil(1e3 * Math.random())].join("");
            t ? txv.lazyreport.push(a) : txv.report(a)
        }, show: function (t) {
            var e = $("#pop_qqmusic");
            e.size() > 0 && (txv.tips.hideMask(), e.remove());
            var a = i(47);
            $("body").append(t.render(t.that, a, {
                title: t.title || "",
                coverType: t.coverType,
                isIe: !!txv.ua.ie
            })), txv.tips.showMask(), e = $("#pop_qqmusic"), txv.tips.fixCss(e), e.find(".x_close").click(function (i) {
                i.preventDefault(), txv.tips.hideMask(), e.remove(), n.reportToTDB(!1, {
                    ival1: 10,
                    ival2: t.ival2,
                    sval: t.sval || "",
                    sval1: t.sval1 || "",
                    sval2: t.sval2 || "",
                    sval3: t.sval3 || "",
                    sval4: t.sval4 || "",
                    sval7: t.sval7 || ""
                })
            }), e.find("._report").click(function (e) {
                n.reportToTDB(!1, {
                    ival1: $(this).attr("data-ival1"),
                    ival2: t.ival2,
                    sval: t.sval || "",
                    sval1: t.sval1 || "",
                    sval2: t.sval2 || "",
                    sval3: t.sval3 || "",
                    sval4: t.sval4 || "",
                    sval7: t.sval7 || ""
                })
            })
        }
    };
    t.exports = n
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="x_modal" id="pop_qqmusic">\n    <!--[if IE]><iframe src="about:blank" frameborder="0" class="x_iframe_mask"></iframe><![endif]-->\n    <div class="x_modal_bd">\n        <a href="javascript:;" class="x_close" title="关闭" _stat="qqmusic-down:close"><i class="x_iconfont x_icon_close">&#xe601;</i></a>\n        <h3 class="x_title">您需要在“ QQ音乐客户端 ” <br />下载《' + title + '》高品质原声</h3>\n    </div>\n    <div class="x_modal_ft">\n        ' + (function () {
                if (isIe)return '<a class="x_btn x_btn_primary _report" _stat="qqmusic-down:open" data-ival1="9" href="tencent://QQMusic/?version==700&&cmd_count==1&&cmd_0==4003&&clienttype_0==0">打开客户端</a>'
            }() || "") + '\n        <a class="x_btn x_btn_primary _report" _stat="qqmusic-down:down" data-ival1="8" target="_blank" href="http://y.qq.com/vedio/vediotomusic.html">下载客户端</a>\n    </div>\n</div>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="mod_hd">\n    <div class="mod_title">\n        <h2 class="title">影视原声</h2>\n    </div>\n</div>\n<div class="mod_bd">    \n    <div class="mod_music">\n        ' + (list.song_list || []).map(function (t, e) {
                return "" + (function () {
                        if (e <= 2)return '\n        <div class="_control_line item ' + (function () {
                                return e % 2 == 0 ? "item_odd" : "item_even"
                            }() || "") + '"\n            data-index="' + e + '" data-url="' + t.url + '" data-aid="' + t.album_id + '"' + (function () {
                                if (t.album_mid)return ' data-amid="' + t.album_mid + '"'
                            }() || "") + (function () {
                                if (t.album_name)return ' data-aname="' + t.album_name + '"'
                            }() || "") + ' data-songid="' + t.song_id + '"' + (function () {
                                if (t.song_name)return ' data-sname="' + t.song_name + '"'
                            }() || "") + '>\n            <span class="name" title="' + _(t.song_name) + '">' + _(t.song_name) + '</span><i class="icon_music_now"></i>\n            ' + (function () {
                                if (t.mv_id)return '<a href="' + _.playUrl(t.mv_id) + '" class="_mode_mv btn_music_mv" target="_blank" data-mv="' + t.mv_id + '" title="播放MV"><span class="mark_mv">MV</span></a>'
                            }() || "") + '\n            <a href="javascript:;" class="_mode_play btn_music_play" title="播放音乐">\n                <i class="iconfont icon_play">&#x1012;</i>\n                <i class="iconfont icon_pause">&#x1010;</i>\n            </a>\t\t\t\n            <a href="javascript:;" class="_mode_down btn_music_download" title="下载音乐"><i class="iconfont icon_download">&#xE616;</i></a>\n        </div>\n        '
                    }() || "")
            }).join("") + '\n        <a class="_mode_down item_more" href="javascript:;" title="下载音乐"><i class="iconfont icon_qqmusic">&#xe617;</i><span class="icon_text">下载QQ音乐，畅听更多影视原声（共' + _(list.song_list.length) + "首）</span></a>\n    </div>\n</div>"
    }
}, function (t, e, i) {
    var n = window.PageMsg, a = i(15);
    t.exports = Reve.component("c-barrage-list", {
        ready: function () {
            if (this.hasbullet()) {
                var t = i(50);
                t.init(this), this.getSeajs(function () {
                    seajs.use("module/template", function () {
                        seajs.use("module/barragelist", function (t) {
                            var e = {
                                cgicallback: function (t) {
                                    window.PLAYER && window.PLAYER.callPlayerExtendMethod("commendCallback", t)
                                }
                            };
                            t.configuer(e), t.init({message: n})
                        })
                    })
                })
            }
        }, methods: {
            getSeajs: function (t) {
                a("//vm.gtimg.cn/tencentvideo/script/txv.sea.js", function () {
                    t && t()
                })
            }, hasbullet: function () {
                if (txv.util.useHtml5 && txv.util.useHtml5())return !1;
                if (VIDEO_INFO && VIDEO_INFO.showBullet)return !0;
                if (LIST_INFO && LIST_INFO.data)for (var t in LIST_INFO.data)if (LIST_INFO.data[t].showBullet)return !0;
                return !1
            }
        }
    })
}, function (t, e, i) {
    var n = i(37), a = {
        init: function (t) {
            window.barragePage = {}, barragePage.pop_targetid = 0, barragePage.pop_bulletid = 0, window.__flashplayer_bulletReport = function (e) {
                if (e)return txv.login.isLogin() ? (a.showDlg(t), barragePage.pop_targetid = e.targetid || 0, barragePage.pop_bulletid = e.bulletid || 0) : txv.login.openLogin(), !0
            }, barragePage.reportCallback = function (e) {
                var i = $("#pop_barrage");
                i.hide(), a.clearInput(i), !e || 0 != e.errCode && 21 != e.errCode ? (txv.tips.FloatWarning({
                        title: "举报失败",
                        staySecond: 5,
                        desc: '对不起，网络不太给力，举报失败 <a href="javascript:;" id="pop_barrage_retry">重新举报</a>'
                    }), $("#pop_barrage_retry").unbind("click").bind("click", function () {
                        $(this).parents("#ipop").remove(), a.showDlg(t)
                    })) : txv.tips.FloatMsg({title: "举报成功"})
            }
        }, showDlg: function (t) {
            if (0 == $("#pop_barrage").size()) {
                txv.tips.loadCss();
                var e = i(51), o = n(t, e);
                $("body").append(o), txv.tips.showMask();
                var s = $("#pop_barrage");
                txv.tips.fixCss(s), s.find("#pop_barrage_cancel").click(function () {
                    s.hide(), txv.tips.hideMask(), a.clearInput(s)
                }), s.find(".x_close").click(function () {
                    s.hide(), txv.tips.hideMask()
                }), s.find("#pop_barrage_submit").click(function () {
                    a.submit()
                })
            } else $("#pop_barrage").show(), txv.tips.showMask()
        }, submit: function () {
            var t = $("#pop_barrage"), e = 0;
            t.find("input[type=radio]").each(function () {
                if (this.checked)return e = +$(this).attr("data-poptype"), !1
            });
            var i = t.find("#pop_barrage_txt").val(), n = {
                _method: "put",
                format: "SCRIPT",
                callback: "parent.barragePage.reportCallback",
                targetid: barragePage.pop_targetid,
                commentid: barragePage.pop_bulletid,
                enterapp: "web",
                type: e,
                desc: i,
                g_tk: a.getCSRFToken()
            }, o = t.find("#pop_barrage_form");
            o.empty();
            for (name in n)o.append($('<input name="' + name + '" type="hidden" value="" />').val(n[name]));
            o.submit()
        }, getCSRFToken: function () {
            for (var t = txv.cookie.get("skey") || txv.cookie.get("lskey"), e = 2013, i = 0, n = t.length; i < n; ++i)e += (e << 5) + t.charCodeAt(i);
            return 2147483647 & e
        }, clearInput: function (t) {
            t.find("input[type=radio]").each(function (t, e) {
                t > 0 ? e.checked = !1 : e.checked = !0
            }), t.find("#pop_barrage_txt").val("")
        }
    };
    t.exports = {init: a.init}
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="x_modal" id="pop_barrage">\n    <!--[if IE]><iframe src="about:blank" frameborder="0" class="x_iframe_mask"></iframe><![endif]-->\n    <iframe id="pop_barrage_iframe" name="pop_barrage_iframe" style="display:none"></iframe>\n    <form action="//w.coral.qq.com/report/comment/0" method="post" target="pop_barrage_iframe" id="pop_barrage_form" style="display:none;"></form>\n    <div class="x_modal_bd">\n        <a href="javascript:;" class="x_close" title="关闭"><i class="x_iconfont x_icon_close">&#xe601;</i></a>\n        <div class="x_modal_form">\n            <h3 class="x_title">您为什么要举报此信息？</h3>\n            <div class="x_options">\n                <label class="x_lable"><input type="radio" checked="checked" name="x_option" class="x_radio" data-poptype="1" /><span class="x_text">色情淫秽</span></label>\n                <label class="x_lable"><input type="radio" name="x_option" class="x_radio" data-poptype="8" /><span class="x_text">骚扰谩骂</span></label>\n                <label class="x_lable"><input type="radio" name="x_option" class="x_radio" data-poptype="1024" /><span class="x_text">广告欺诈</span></label>\n                <label class="x_lable"><input type="radio" name="x_option" class="x_radio" data-poptype="32" /><span class="x_text">反动</span></label>\n                <label class="x_lable"><input type="radio" name="x_option" class="x_radio" data-poptype="0" /><span class="x_text">其他</span></label>\n            </div>\n            <h3 class="x_title">举报说明（可选）</h3>\n            <div class="x_desc"><input type="text" class="x_inp_text" id="pop_barrage_txt" placeholder="请描述恶意行为" /></div>\t\n        </div>\n    </div>\n    <div class="x_modal_ft">\n        <a class="x_btn" href="javascript:;" id="pop_barrage_cancel">取消</a>\n        <a class="x_btn x_btn_primary" href="javascript:;" id="pop_barrage_submit">提交</a>\n    </div>\n</div>\n\n'
    }
}, function (t, e, i) {
    var n, a = window.PageMsg, o = null, s = [], r = null, c = 3e5, l = VIDEO_INFO.vid, d = {
        init: function () {
            d.processKeys({
                showBullet: VIDEO_INFO.showBullet,
                vid: VIDEO_INFO.vid
            }), n = i(53), window.js_setDropMatch = function (t) {
                var e = d.getImgUrl(t.keyword);
                e && e.length > 0 && d.start(e, t.from)
            }, a.on("tvp-switchBullet", function (t) {
                s.length > 0 && d.reportToboss({oper: 1, type: t ? 2 : 3})
            })
        }, start: function (t, e) {
            0 != e || r ? 1 != e || o || r || d.showEggs(t, e) : d.showEggs(t, e)
        }, getImgUrl: function (t) {
            for (var e = 0; e < s.length; e++)if (s[e].f_keyword == t)return s[e].f_url;
            return ""
        }, processKeys: function (t) {
            if (!t.showBullet)return void(s.length > 0 && (d.setKeys(null), s = []));
            var e = {};
            COVER_INFO && (COVER_INFO.id && COVER_INFO.id.length > 0 && (e.cid = COVER_INFO.id), COVER_INFO.columnid && COVER_INFO.columnid > 0 && (e.lid = COVER_INFO.columnid)), e.vid = t.vid, d.getKeys(e).then(function (t) {
                if (!t)return void(s.length > 0 && (d.setKeys(null), s = []));
                s = [];
                for (var e = [], i = 0; i < t.length; i++)e = e.concat(d.filterKeys(t[i].f_danmu_eggs));
                d.setKeys(e)
            })
        }, filterKeys: function (t) {
            if (!t || 0 == t.length)return null;
            for (var e = [], i = 0; i < t.length; i++)if (t[i].f_keyword && t[i].f_keyword.length > 0 && t[i].f_url && t[i].f_url.length > 0) {
                for (var n = !0, a = 0; a < s.length; a++)s[a].f_keyword == t[i].f_keyword && (n = !1);
                n && (s.push(t[i]), e.push(t[i].f_keyword))
            }
            return e
        }, getKeys: function (t) {
            var e = $.Deferred();
            return $.ajax({
                url: "//bullet.video.qq.com/fcgi-bin/comment/get_danmu_richdata?otype=json",
                data: t,
                type: "get",
                dataType: "jsonp",
                timeout: 1e4,
                CSRF: !0,
                success: function (t) {
                    t && 0 == t.returncode && t.data && t.data.length > 0 ? e.resolve(t.data) : e.resolve(null)
                },
                error: function () {
                    e.resolve(null)
                }
            }), e.promise()
        }, setKeys: function (t) {
            t = t && 0 != t.length ? t.join(",") : "", window.PLAYER && window.PLAYER.callPlayerExtendMethod("flash_setDropKeyword", {keyword: t})
        }, reportToboss: function (t) {
            var e = {
                BossId: 3635,
                oper: t.oper,
                uin: txv.login.getUnicode(),
                logintype: txv.login.getLoginType(),
                type: t.type,
                lid: COVER_INFO.columnid || "",
                cid: COVER_INFO.id || "",
                vid: l,
                url: document.URL || document.location.href,
                Pwd: 640542790
            }, i = "";
            i = $.param(e);
            var n = ["//btrace.video.qq.com/kvcollect?", i, "&_=", Math.ceil(1e3 * Math.random())].join("");
            txv.report(n)
        }, showEggs: function (t, e) {
            for (var i = 50, a = document.createDocumentFragment(); i--;) {
                var s = new n({
                    fixed: !0,
                    delay: [0, 1],
                    destroyed: !0,
                    duration: [2, 4.5],
                    img: t,
                    imgonload: function (t) {
                        var e = t.width, i = t.height;
                        t.width = e / 2, t.height = i / 2
                    }
                });
                a.appendChild(s.$el)
            }
            document.body.appendChild(a), 1 == e && (clearTimeout(o), o = setTimeout(function () {
                o = null
            }, c)), clearTimeout(r), r = setTimeout(function () {
                r = null
            }, 5e3), d.reportToboss({oper: 0, type: e})
        }, hasbullet: function () {
            if (txv.util.useHtml5 && txv.util.useHtml5())return !1;
            if (VIDEO_INFO && VIDEO_INFO.showBullet)return !0;
            if (LIST_INFO && LIST_INFO.data)for (var t in LIST_INFO.data)if (LIST_INFO.data[t].showBullet)return !0;
            return !1
        }
    };
    t.exports = function () {
        d.hasbullet() && (a.on("tvp-bulletReady", function (t) {
            d.init()
        }), a.on("vidChanged", function (t) {
            l = t.vid, d.processKeys(t)
        }))
    }
}, function (t, e, i) {
    var n;
    n = function (t, e, i) {
        function n(t, e) {
            return t.replace(/\{\$(\w+)\}/g, function (t, i) {
                return e.hasOwnProperty(i) ? e[i] : ""
            })
        }

        function a(t, e) {
            return "translate(" + t + "px," + e + "px)"
        }

        function o(t) {
            return "rotate(" + t + "deg)"
        }

        function s(t, e) {
            return Math.random() * (e - t) + t
        }

        function r(t, e) {
            return Math.floor(Math.random() * (e - t) + t)
        }

        function c() {
            return Math.round(Math.random())
        }

        function l() {
            var t = 0;
            return "number" == typeof window.innerHeight ? t = window.innerHeight : document.documentElement && document.documentElement.clientHeight ? t = document.documentElement.clientHeight : document.body && document.body.clientHeight && (t = document.body.clientHeight), t
        }

        function d() {
            var t = 0;
            return "number" == typeof window.innerWidth ? t = window.innerWidth : document.documentElement && document.documentElement.clientWidth ? t = document.documentElement.clientWidth : document.body && document.body.clientWidth && (t = document.body.clientWidth), t
        }

        function p(t, e) {
            return parseFloat(t.toFixed(e))
        }

        function u() {
        }

        function _(t) {
            var e = this;
            this._texture = t.img, this._timing = t.timing || "ease-in", this._duration_min = t.duration ? t.duration[0] : 1, this._duration_max = t.duration ? t.duration[1] : 2, this._delay_min = t.delay ? t.delay[0] : 0, this._delay_max = t.delay ? t.delay[1] : 1.5, this._offset_min = t.offset ? t.offset[0] : 100, this._offset_max = t.offset ? t.offset[0] : 300, this._rotate_min = t.rotate ? t.rotate[0] : 20, this._rotate_max = t.rotate ? t.rotate[0] : 80, this._jquery = t.jquery || window.$;
            var i = t.imgonload, n = t.onend, a = !!t.infinite, o = !!t.destroyed;
            this._delay = s(this._delay_min, this._delay_max);
            var r = this.$el = document.createElement("div");
            a && o && window.console && console.log && console.log('[Warn] "destroyed" will not work when using "infinite".'), r.style.pointerEvents = "none", r.style.position = t.fixed ? "fixed" : "absolute", r.style.top = "0px", r.style.left = "0px", r.style.zIndex = "4999";
            var c = this.$img = document.createElement("img");
            if (c.onload = function () {
                    i && i(c), e.start()
                }, c.src = this._texture, r.appendChild(this.$img), this._animationEnd = function () {
                    a ? e.start() : o ? e.destroy() : a || (r.style.display = "none"), n && n()
                }, h) {
                this.initTransformAnimation();
                var l = function (t) {
                    "transform" == t.propertyName && e._animationEnd()
                }, d = !!r.attachEvent;
                d ? r.attachEvent("ontransitionend", l) : r.addEventListener("transitionend", l), this._offEnd = function () {
                    d ? r.detachEvent("ontransitionend", l) : r.removeEventListener("transitionend", l)
                }
            } else this.initTraditionalAnimation()
        }

        var f, v, m = document.createElement("div").style, h = !0, g = "", y = "";
        "transform" in m && "transition" in m ? g = "t" : "webkitTransform" in m && "webkitTransition" in m ? (g = "webkitT", y = "-webkit-") : h = !1;
        var w = y + "transform {$duration}s {$timing} {$delay}s";
        f = g + "ransform", v = g + "ransition";
        var x = _.prototype;
        x.initTransformAnimation = function () {
            var t = this.$el, e = this.$img;
            return e.style[v] = t.style[v] = "", t.style[f] = a(0, -200), e.style[f] = o(0), this
        }, x.initTraditionalAnimation = function () {
            var t = this.$el;
            return t.style.marginLeft = "0px", t.style.marginTop = "-200px", this
        }, x.destroy = function () {
            if (!this._destroyed) {
                var t = this.$el.parentNode;
                t && t.removeChild(this.$el), this._offEnd && this._offEnd(), this._animationEnd = this._offEnd = u
            }
        }, x.transformAnimate = function (t) {
            var e = this, i = this.$el, s = this.$img;
            return this.initTransformAnimation(), setTimeout(function () {
                s.style[v] = i.style[v] = n(w, {
                    duration: t.duration,
                    delay: Math.round(e._delay),
                    timing: e._timing
                }), i.style[f] = a(t.offsetX, t.offsetY), s.style[f] = o((c() ? -1 : 1) * r(e._rotate_min, e._rotate_max))
            }, 50), this
        }, x.traditionalAnimate = function (t) {
            var e = this, i = this.$el;
            return this.initTraditionalAnimation(), setTimeout(function () {
                e._jquery(i).animate({
                    marginLeft: t.offsetX,
                    marginTop: t.offsetY
                }, 1e3 * t.duration, "swing", e._animationEnd)
            }, 1e3 * this._delay), this
        }, x.start = function () {
            if (this._destroyed)return this;
            var t = this.$el, e = p(s(this._duration_min, this._duration_max), 1), i = (c() ? 1 : -1) * Math.floor(s(this._offset_min, this._offset_max)), n = d();
            n -= 100;
            var a = 50 + Math.round(s(0, n));
            t.style.left = a + "px", t.style.display = "";
            var o = l();
            o += 100;
            var r = {duration: e, offsetX: i, offsetY: o};
            return h ? this.transformAnimate(r) : this.traditionalAnimate(r), this
        }, i.exports = _
    }.call(e, i, e, t), !(void 0 !== n && (t.exports = n))
}, function (t, e, i) {
    var n = window.PageMsg, a = i(37), o = (i(9),
        "commentIframe"), s = null, r = !1, c = !(COVER_INFO.id && $.inArray(COVER_INFO.typeid, [1, 10, 46]) != -1), l = window.location.protocol + "//v.qq.com/txyp/coralComment_yp_1.0.htm";
    t.exports = Reve.component("c-comments", {
        ready: function () {
            s = $(this.$el), this.setIframeInfo();
            var t = this;
            c && n.on("vidChanged", function (e) {
                r = !1, t.show(e.vid)
            }), n.on("scrollToComment", function () {
                var t = s.offset().top, e = $(document);
                e.scrollTop(t), r || setTimeout(function () {
                    t = s.offset().top, e.scrollTop(t)
                }, 500)
            })
        }, methods: {
            show: function (t) {
                t = t || (c ? VIDEO_INFO.vid : COVER_INFO.id);
                var e = this;
                setTimeout(function () {
                    r || (e.loadComment(t), r = !0)
                }, 100)
            }, loadComment: function (t) {
                var e = this;
                e.getCommentId(t, function (t) {
                    if (t) {
                        e.setCommentId(t);
                        var i = $("#" + o);
                        i.size() > 0 ? i.attr("src", l + "?t=" + new Date) : e.appendIframe(t), s.show()
                    }
                })
            }, appendIframe: function (t) {
                if (s && 1 == s.size()) {
                    var e = i(55), n = a(this, e, {
                        url: l,
                        id: o,
                        adid: s.attr("data-adid") || "",
                        coralEvent: "registerCoralEvent"
                    });
                    s.append(n)
                }
            }, setCommentId: function (t) {
                window.cmt_id = t, "function" == typeof window.getCmtCnt && $.ajax({
                    url: "//coral.qq.com/article/" + t + "/commentnum",
                    dataType: "jsonp",
                    success: function (t) {
                        t && t.data && t.data.commentnum && "function" == typeof window.getCmtCnt && window.getCmtCnt(t.data.commentnum)
                    }
                })
            }, getCommentId: function (t, e) {
                if ("string" == $.type(t) && $.isFunction(e)) {
                    var i = {op: 3};
                    $.isNumeric(t) ? i.column = t : 15 == t.length ? i.cid = t : i.vid = t, $.ajax({
                        url: "//ncgi.video.qq.com/fcgi-bin/video_comment_id?otype=json",
                        data: i,
                        dataType: "jsonp"
                    }).done(function (t) {
                        t && t.result && 0 == t.result.ret && t.comment_id && e(t.comment_id)
                    }).error(function () {
                        s.hide()
                    })
                }
            }, setIframeInfo: function () {
                window.registerCoralEvent = {
                    code: 1,
                    source: 9,
                    site: "video",
                    ownStyle: window.location.protocol + "//imgcache.gtimg.cn/tencentvideo_v1/vstyle/web/v3/style/niuping/np_vstyle.css?max_age=86400&v=20140113",
                    loginEvent: function () {
                        txv.login.openLogin()
                    },
                    publicLogined: function () {
                        var t = txv.login.getUin(), e = txv.login.getNick(), i = txv.login.getAvatar(), n = document.getElementById(o);
                        if (n)try {
                            n.contentWindow.publicLogined(t, e, i)
                        } catch (a) {
                        }
                    },
                    publicLogout: function () {
                        var t = document.getElementById(o);
                        if (t)try {
                            t.contentWindow.publicLogout()
                        } catch (e) {
                        }
                    }
                }, "undefined" != typeof window.addCmtObj && $.isPlainObject(window.addCmtObj) && $.extend(window.registerCoralEvent, window.addCmtObj), txv.login.addLoginCallback(registerCoralEvent.publicLogined), txv.login.addClearLoginStatusCallback(registerCoralEvent.publicLogout)
            }
        }
    })
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<iframe src = "' + url + '" frameborder="no" scrolling=no id = "' + id + '" data-adid="' + adid + '" onload="var uin = txv.login.getUin();if(parseInt(uin)>10000){' + coralEvent + '.publicLogined();}"></iframe>'
    }
}, function (t, e) {
    t.exports = Reve.component("c-ads-float", {
        ready: function () {
            var t = $(this.$el), e = $(window), i = $("#mod_rightAdsLocat");
            e.bind("scroll resize", function () {
                var n = i.offset().top;
                e.scrollTop() <= n ? t.hasClass("side_ad_fixed") && t.removeClass("side_ad_fixed") : t.hasClass("side_ad_fixed") || t.addClass("side_ad_fixed")
            })
        }, methods: {}
    })
}, function (t, e, i) {
    var n = (i(37), i(58)), a = i(59), o = i(60), s = i(68), r = i(74), c = i(77), l = i(79), d = i(80), p = i(84), u = i(64), _ = i(17);
    t.exports = Reve.component("c-vip", {
        ready: function () {
            var t = this;
            "undefined" == typeof $.pay ? $.getScript("//vm.gtimg.cn/tencentvideo_v1/script/vip.minipay.js?date=20160913", function () {
                    t.buildVipSection()
                }) : this.buildVipSection();
            var t = this;
            txv.login.addLoginCallback(function () {
                try {
                    t.buildVipSection()
                } catch (e) {
                }
            }), txv.login.addLogoutCallback(function () {
                try {
                    t.buildVipSection()
                } catch (e) {
                }
            }), txv.buildVipSection = this.buildVipSection, this.checkScroll()
        }, methods: {
            buildVipSection: function () {
                u.clearCache();
                var t = this, e = function () {
                    t.eventAndQr()
                };
                if (txv.vip.isvip = !1, txv.login.isLogin()) {
                    var i = txv.login.getLoginType();
                    txv.vip.getVipInfo().done(function (n) {
                        n.vip ? ("wx" == i ? s.build(t.$el, n, e) : r.build(t.$el, n, e), txv.vip.isvip = !0) : "wx" == i ? c.build(t.$el, {}, e) : l.build(t.$el, {}, e)
                    }).fail(function () {
                        "wx" == i ? c.build(t.$el, {}, e) : l.build(t.$el, {}, e)
                    })
                } else o.build(this.$el, {}, e)
            }, __tenplay_hidePayTips: function () {
                hideBasePayTip && $("#poptip").remove();
                try {
                    for (var t in WEBSOCKS)WEBSOCKS.hasOwnProperty(t) && WEBSOCKS[t].close()
                } catch (e) {
                }
            }, vipPayRefreshHandler: function () {
                return txv.login.isLogin() ? (setTimeout(function () {
                        window.location.reload()
                    }, 1e3), this.__tenplay_hidePayTips(), !1) : (txv.login.openLogin({
                        success: function () {
                            setTimeout(function () {
                                window.location.reload()
                            }, 1e3)
                        }
                    }), this.__tenplay_hidePayTips(), !1)
            }, checkScroll: function () {
                setTimeout(function () {
                    var t = $("#video_scroll_wrap");
                    t.scroll(function () {
                        t.scrollTop() > 100 ? t.prev().addClass("vip_show") : t.prev().removeClass("vip_show")
                    })
                }, 500)
            }, eventAndQr: function () {
                var t = this, e = $(this.$el), i = $("div.player_vip_fixed");
                setTimeout(function () {
                    if (e.find("a.btn_vip_normal").length > 0) {
                        var o = e.find("a.btn_vip_normal");
                        i.html(a), i.find("span.icon_text").html(o.find("span.icon_text").html()), $.each(["vip_minipay_click", "vip_ticket_click", "vip_singlebuy_click", "vip_qr_hover"], function (t, e) {
                            o.hasClass(e) && i.find("a.btn_vip_normal").addClass(e)
                        }), i.append(e.find(".vip_qr_pop").clone())
                    } else if (e.find("a.btn_vip_big").length > 0) {
                        var o = e.find("a.btn_vip_big");
                        i.html(n), i.find("span.icon_text").html(o.find("span.icon_text").html()), $.each(["vip_minipay_click", "vip_ticket_click", "vip_singlebuy_click"], function (t, e) {
                            o.hasClass(e) && i.find("a.btn_vip_big").addClass(e)
                        })
                    } else e.hasClass("mod_side_vip_wechat") && (i.html(e.clone().removeAttr("id class _r-component _r-cid r-notemplate")), i.find(".txt_vip_big, .link_vip_big").remove(), i.find("#vip_qrcode_img").removeAttr("id").addClass("vip_qrcode_img"));
                    var s = e.attr("class");
                    if (i.addClass(s), $(".vip_qr_hover").unbind("mouseover").bind("mouseover", function () {
                            $(this).siblings(".vip_qr_pop").removeClass("none")
                        }).unbind("mouseout").bind("mouseout", function () {
                            $(this).siblings(".vip_qr_pop").addClass("none")
                        }), $(".vip_minipay_click").length > 0 && $(".vip_minipay_click").unbind("click").bind("click", function () {
                            var t = $(this), e = 9, i = t.attr("_stat");
                            "player_rightpanel" === i && (e = 9);
                            var n = {
                                _source: e,
                                _scene: 8,
                                _cid: COVER_INFO.id,
                                _vid: VIDEO_INFO.vid,
                                aid_version: "V0"
                            };
                            return !txv.login.isLogin() || "qq" == txv.login.getLoginType() && txv.login.isLowLogin() ? txv.login.openPayLogin({
                                    isLowLogin: txv.login.isLowLogin(),
                                    success: function () {
                                        txv.vip.getVipInfo().done(function (t) {
                                            t.vip || "qq" != txv.login.getLoginType() ? t.vip && "wx" == txv.login.getLoginType() && txv.login.bye_login() : $.pay(n)
                                        })
                                    }
                                }) : $.pay(n), !1
                        }), txv.cookie.get("vip_minipay") && ($(".vip_minipay_click").length > 0 || 1 === $("#vip_qrcode_img").length)) {
                        var r = {_source: 10, _scene: 8, _cid: COVER_INFO.id, _vid: VIDEO_INFO.vid, aid_version: "V0"};
                        txv.cookie.get("vip_minipay_aid") && (r._source = txv.cookie.get("vip_minipay_aid")), $.pay(r)
                    }
                    $(".vip_ticket_click").length > 0 && ($(".vip_ticket_click").unbind("click").bind("click", function () {
                        return txv.login.getLoginType() && txv.login.isStrongLogin() ? p() : txv.login.openPayLogin({
                                isLowLogin: txv.login.isLowLogin(),
                                success: function () {
                                    txv.cookie.set("vip_useticket", "1"), window.location.reload()
                                }
                            }), !1
                    }), txv.cookie.get("vip_useticket") && p()), $(".vip_singlebuy_click").length > 0 && ($(".vip_singlebuy_click").unbind("click").bind("click", function () {
                        return txv.login.getLoginType() && txv.login.isStrongLogin() ? d() : txv.login.openPayLogin({
                                isLowLogin: txv.login.isLowLogin(),
                                success: function () {
                                    txv.cookie.set("vip_singlebuy", "1"), window.location.reload()
                                }
                            }), !1
                    }), txv.cookie.get("vip_singlebuy") && d()), $(".vip_refresh_click").unbind("click").bind("click", function () {
                        return window.location.reload(), !1
                    });
                    var c = "//i.gtimg.cn/qqlive/images/20160823/qr_npc.gif";
                    $("#vip_qrcode_img").unbind("mouseover").bind("mouseover", function () {
                        $("#vmm_moe").html("<img src='" + c + "?t=" + Math.random() + "' />")
                    }), $("#vip_qrcode_img").length > 0 && t.setQrcode(), txv.cookie.del("vip_minipay"), txv.cookie.del("vip_minipay_aid"), txv.cookie.del("vip_useticket"), txv.cookie.del("vip_singlebuy")
                }, 300)
            }, setQrcode: function () {
                $("#vip_qrcode_img").load(function () {
                    var t = $("#vip_qrcode_img").attr("src");
                    $(".vip_qrcode_img").attr("src", t), _.click("vip_rightpanel:showQrcode")
                });
                var t = $.pay({aid_version: "V0", key4: 9, key11: 2, _scene: 2}, "aid");
                $.pay_qrimg({
                    id: "vip_qrcode_img", pay_type: 0, use_ws: !1, aid: t, scan_suc: function () {
                        _.click("vip_rightpanel:scanSucc")
                    }, pay_suc: function () {
                        window.location.reload()
                    }, error: function () {
                    }
                })
            }
        }
    })
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<a href="javascript:;" class="btn_vip_big">\n    <span class="icon_text">开通VIP会员免费看</span>\n</a>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<a href="javascript:;" class="btn_vip_normal">\n    <i class="icon_sm icon_vip_flat_sm"><svg class="svg_icon svg_icon_vip_flat_sm" viewBox="0 0 16 16"><path d="M14.746 7.105l-2.584 2.959.422 4.038-.014.012c.007.042.024.081.024.125 0 .424-.329.768-.734.768a.713.713 0 0 1-.273-.057l-.011.009-3.57-1.685-3.539 1.647-.008-.005a.695.695 0 0 1-.33.091c-.406 0-.734-.344-.734-.768 0-.032.013-.059.017-.09l-.009-.006.17-1.56c.475-.108.943-.233 1.4-.383l-.098.805 3.115-1.294 3.073 1.292-.351-3.232 2.291-2.737-.486-.085c.346-.434.667-.889.967-1.359l.942.189.006.02a.75.75 0 0 1 .571.733.77.77 0 0 1-.257.573zm-1.618-2.671c-2.169 3.982-5.932 6.722-10.238 7.351a.63.63 0 0 1-.345.073c-.385-.039-.666-.41-.628-.829a.729.729 0 0 1 .607-.669l-.003-.03c3.946-.511 7.401-3.005 9.388-6.636.127-.27.394-.444.688-.414.385.039.666.41.627.829a.785.785 0 0 1-.104.32l.008.005zM7.99 3.014L6.348 6.441l-3.347.579 1.685 2.042a12.73 12.73 0 0 1-1.333.434L1.268 7.107a.773.773 0 0 1-.259-.575c0-.345.221-.626.52-.723l.008-.034 3.928-.776 1.869-3.597h.03a.724.724 0 0 1 .642-.416c.279 0 .513.169.637.409h.028l1.722 3.31c-.318.429-.659.839-1.027 1.224L7.99 3.014z"></path></svg></i>\n    <span class="icon_text">开通VIP会员免费看</span>\n    <i class="icon_sm icon_qr_sm"><svg class="svg_icon svg_icon_qr_sm" viewBox="0 0 16 16"><path d="M13.5 11.5a1 1 0 0 1-1-1 1 1 0 0 1 0-2h1a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1zm0-4h-4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1zm-1-4h-2v2h2v-2zm-6 11h-4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1zm-1-4h-2v2h2v-2zm1-3a1 1 0 0 1-1-1v-4a1 1 0 0 1 2 0v4a1 1 0 0 1-1 1zm-3 0h-1a1 1 0 0 1 0-2 1 1 0 0 1 2 0v1a1 1 0 0 1-1 1zm0-4h-1a1 1 0 0 1 0-2h1a1 1 0 0 1 0 2zm6 5a1 1 0 1 1 0 2 1 1 0 0 1 0-2zm0 4a1 1 0 0 1 2 0v1a1 1 0 0 1-1 1h-1a1 1 0 0 1 0-2zm4 0a1 1 0 1 1 0 2 1 1 0 0 1 0-2z"></path></svg></i>\n</a>'
    }
}, function (t, e, i) {
    var n = i(61), a = i(62), o = i(58), s = i(63), r = i(64), c = i(17), l = "vip_rightpanel:", d = function (t, e, i) {
        var d = $(t);
        d.removeClass("mod_side_vip_wechat").addClass("mod_side_vip");
        var p = r.getOpenVIPText();
        r.getEventText(function (t) {
            if (COVER_INFO.payStatus == s.SINGLE_BUY)if (100 == COVER_INFO.vipDiscount) {
                d.html(o), d.find(".btn_vip_big").addClass("vip_singlebuy_click");
                var e = r.getFormatPrice(VIDEO_INFO.singlePrice);
                d.find(".btn_vip_big span.icon_text").html(e + "元购买本片")
            } else {
                d.html(a), d.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), d.find(".link_vip_normal").addClass("vip_singlebuy_click");
                var e = r.getFormatPrice(VIDEO_INFO.singlePrice), u = r.getFormatPrice(VIDEO_INFO.vipPrice);
                d.find(".link_vip_normal span.icon_text").html("非会员原价" + e + "元购买本片"), d.find(".btn_vip_normal span.icon_text").html("开通VIP享" + u + "元购买 " + t), c.click(l + "showOpenVip")
            } else if (COVER_INFO.payStatus == s.VIP_MONTHLY) {
                d.html(a), d.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), d.find(".btn_vip_normal span.icon_text").html(p + " " + t);
                var e = r.getFormatPrice(VIDEO_INFO.singlePrice);
                d.find(".link_vip_normal span.icon_text").html("非会员原价" + e + "元购买本片"), d.find(".link_vip_normal").addClass("vip_singlebuy_click"), c.click(l + "showOpenVip")
            } else if (COVER_INFO.payStatus == s.VIP_ONLY) d.html(n), d.find(".btn_vip_normal span.icon_text").html(p + " " + t), d.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), c.click(l + "showOpenVip"); else if (COVER_INFO.payStatus == s.VIP_TICKET) {
                d.html(a), d.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), d.find(".btn_vip_normal span.icon_text").html("开通VIP会员用券看 " + t);
                var e = r.getFormatPrice(VIDEO_INFO.singlePrice);
                d.find(".link_vip_normal").addClass("vip_singlebuy_click"), d.find(".link_vip_normal span.icon_text").html("非会员原价" + e + "元购买本片"), c.click(l + "showOpenVip")
            } else if (VIDEO_INFO.isTrailer)if (d.html(n), d.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), "" !== t && d.find(".txt_vip_normal .icon_text").html(t), c.click(l + "showOpenVip"), COVER_INFO.vipPullText && "null" !== COVER_INFO.vipPullText) d.find(".btn_vip_normal .icon_text").html(COVER_INFO.vipPullText); else {
                var _ = r.getTrailerDate(COVER_INFO.vipOnlineDate);
                _ && d.find(".btn_vip_normal .icon_text").html("开通VIP " + _ + "看全片")
            }
            i()
        })
    };
    t.exports = {
        build: function (t, e, i) {
            d(t, e, i)
        }
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<a href="javascript:;" class="btn_vip_normal vip_qr_hover">\n    <i class="icon icon_vip_flat"><svg class="svg_icon svg_icon_vip_flat" viewBox="0 0 20 20"><path d="M18.65 8.855l-3.507 3.798.572 5.185-.019.015c.009.054.033.104.033.16a.991.991 0 0 1-1.367.912l-.015.012L9.5 16.774l-4.805 2.115-.011-.007a.986.986 0 0 1-.448.118.992.992 0 0 1-.997-.986c0-.041.019-.076.023-.115l-.012-.009.188-1.626a20.747 20.747 0 0 0 2.1-.681l-.089.764L9.5 14.578l3.996 1.766-.456-4.417 2.979-3.099-1.231-.25c.444-.591.856-1.205 1.237-1.842l2.193.417.008.025c.44.102.774.475.774.942 0 .297-.14.554-.35.735zm-2.557-4.417C13.523 9.924 8.525 14 2.481 15.391a.978.978 0 0 1-.481.14 1 1 0 0 1-1-1c0-.473.335-.851.777-.955l-.009-.039a17.968 17.968 0 0 0 12.494-9.905.997.997 0 0 1 1.926.368c0 .156-.043.3-.107.432l.012.006zM9.5 4.059L7.365 7.932l-4.353.833 2.365 2.533c-.65.314-1.319.594-2.012.824L.352 8.857A.968.968 0 0 1 0 8.12c0-.443.3-.804.707-.928l.011-.044 5.333-.997 2.537-4.618h.041A.986.986 0 0 1 9.5 1c.378 0 .696.217.865.525h.038l1.954 3.552a16.898 16.898 0 0 1-1.316 1.822L9.5 4.059z"></path></svg></i>\n    <span class="icon_text">开通VIP会员免费看</span>\n</a>\n<span class="txt_vip_normal">\n    <span class="icon_text">尊享看大片，免广告等权益</span>\n</span>\n<!-- 侧边二维码 -->\n<div class="vip_qr_side vip_qr_hover">\n    <div class="vip_qr_pic">\n        <div id="vmm_moe" class="qr_npc"></div>\n        <img id="vip_qrcode_img" />\n    </div>\n    <!-- <span class="qr_video_mm"><i class="qr_video_mm_inner"></i></span> -->\n</div>\n<!-- 浮层二维码 -->\n<div class="vip_qr_pop none">\n    <i class="triangle_up"></i>\n    <div class="vip_qr_pic">\n        <img class="vip_qrcode_img" />\n    </div>\n    <span class="qr_video_mm"></span>\n    <div class="qr_title">微信扫码快速开通会员</div>\n</div>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<a href="javascript:;" class="btn_vip_normal vip_qr_hover">\n    <i class="icon_sm icon_vip_flat_sm"><svg class="svg_icon svg_icon_vip_flat_sm" viewBox="0 0 16 16"><path d="M14.746 7.105l-2.584 2.959.422 4.038-.014.012c.007.042.024.081.024.125 0 .424-.329.768-.734.768a.713.713 0 0 1-.273-.057l-.011.009-3.57-1.685-3.539 1.647-.008-.005a.695.695 0 0 1-.33.091c-.406 0-.734-.344-.734-.768 0-.032.013-.059.017-.09l-.009-.006.17-1.56c.475-.108.943-.233 1.4-.383l-.098.805 3.115-1.294 3.073 1.292-.351-3.232 2.291-2.737-.486-.085c.346-.434.667-.889.967-1.359l.942.189.006.02a.75.75 0 0 1 .571.733.77.77 0 0 1-.257.573zm-1.618-2.671c-2.169 3.982-5.932 6.722-10.238 7.351a.63.63 0 0 1-.345.073c-.385-.039-.666-.41-.628-.829a.729.729 0 0 1 .607-.669l-.003-.03c3.946-.511 7.401-3.005 9.388-6.636.127-.27.394-.444.688-.414.385.039.666.41.627.829a.785.785 0 0 1-.104.32l.008.005zM7.99 3.014L6.348 6.441l-3.347.579 1.685 2.042a12.73 12.73 0 0 1-1.333.434L1.268 7.107a.773.773 0 0 1-.259-.575c0-.345.221-.626.52-.723l.008-.034 3.928-.776 1.869-3.597h.03a.724.724 0 0 1 .642-.416c.279 0 .513.169.637.409h.028l1.722 3.31c-.318.429-.659.839-1.027 1.224L7.99 3.014z"></path></svg></i>\n    <span class="icon_text">开通VIP会员免费看</span>\n</a>\n<a href="javascript:;" class="link_vip_normal">\n    <span class="icon_text"> 暑期5折开会员 看大片 </span>\n    <i class="icon_sm icon_right_sm"><svg class="svg_icon svg_icon_right_sm" viewBox="0 0 16 16"><path d="M11.71 8.716L7.716 12.71a1.01 1.01 0 0 1-1.427-1.427L9.573 8 6.289 4.716a1.01 1.01 0 0 1 1.427-1.427l3.994 3.994c.198.198.296.458.295.717.001.259-.097.518-.295.716z"></path></svg></i>\n</a>\n<!-- 侧边二维码 -->\n<div class="vip_qr_side vip_qr_hover">\n    <div class="vip_qr_pic">\n        <div id="vmm_moe" class="qr_npc"></div>\n        <img id="vip_qrcode_img" />\n    </div>\n    <!-- <span class="qr_video_mm"><i class="qr_video_mm_inner"></i></span> -->\n</div>\n<!-- 浮层二维码 -->\n<div class="vip_qr_pop none">\n    <i class="triangle_up"></i>\n    <div class="vip_qr_pic">\n        <img class="vip_qrcode_img" />\n    </div>\n    <span class="qr_video_mm"></span>\n    <div class="qr_title">微信扫码快速开通会员</div>\n</div>'
    }
}, function (t, e) {
    var i = {SINGLE_BUY: 7, VIP_MONTHLY: 5, VIP_ONLY: 6, VIP_TICKET: 4};
    t.exports = i
}, function (t, e, i) {
    var n, a = i(17), o = i(65), s = i(66), r = i(67), c = i(30), l = {
        userTicket: null,
        eventText: null,
        isVip: null,
        vipInfo: null,
        bindAccount: null
    }, d = function () {
        l = {userTicket: null, eventText: null, isVip: null, vipInfo: null, bindAccount: null}
    }, p = function (t) {
        var e = t.split(" "), i = e[0].split("-"), n = e[1].split(":"), a = new Date(i[0], i[1] - 1, i[2], n[0], n[1], n[2]);
        return Math.ceil((a.getTime() - new Date) / 864e5)
    }, u = function (t) {
        var t = t + "";
        return 1 === t.length && (t = "0" + t), t
    }, _ = function (t) {
        var e = new Date, i = e.getTime() + 864e5 * parseInt(t, 10);
        return e.setTime(i), e.getFullYear() + "-" + u(e.getMonth() + 1) + "-" + u(e.getDate()) + " " + u(e.getHours()) + ":" + u(e.getMinutes()) + ":" + u(e.getSeconds())
    }, f = function (t, e, i, n) {
        if (t) {
            var a, o = window == top, s = o ? document : top.document, r = s.body.scrollTop, c = s.documentElement.clientHeight, l = $(t);
            e = e || l.width() || 373, i = i || l.height() || 235, n = n === !1, 0 == r && (r = s.documentElement.scrollTop), 0 == c && (c = s.body.clientHeight), a = parseInt(l.css("zIndex")), l.css({
                width: e + "px",
                height: i + "px",
                top: "50%",
                left: "50%",
                marginLeft: -e / 2 + "px",
                marginTop: -i / 2 + "px",
                position: "fixed",
                zIndex: a || "10001",
                display: "block"
            })
        }
    }, v = function (t) {
        return null !== l.userTicket ? void t(l.userTicket) : void $.ajax({
                url: "//pay.video.qq.com/fcgi-bin/user_ticket",
                dataType: "jsonp",
                data: {uin: txv.login.getUin(), status: 1, psize: 10, _t: 5, otype: "json", platform: 1},
                CSRF: !0,
                success: function (e) {
                    0 === e.result.code ? (l.userTicket = e.not_use, t(e.not_use)) : t(0)
                },
                error: function () {
                    t(0)
                }
            })
    }, m = function (t) {
        $.ajax({
            url: "//pay.video.qq.com/fcgi-bin/pay?otype=json",
            dataType: "jsonp",
            CSRF: !0,
            data: {id: COVER_INFO.id, uin: txv.login.getUin()},
            success: function (e) {
                return 0 == e.result.code && 1 == e.pay ? void t(!0, e) : void t(!1)
            },
            error: function () {
                t(!1)
            }
        })
    }, h = function (t) {
        return null !== l.eventText ? void t(l.eventText) : void $.ajax({
                url: "//pay.video.qq.com/fcgi-bin/get_config?name=457324&otype=json",
                dataType: "jsonp",
                success: function (e) {
                    e.event && "" !== e.event ? (t(e.event), l.eventText = e.event) : (t(""), l.eventText = "")
                },
                error: function () {
                    t("")
                }
            })
    }, g = function (t) {
        var e = t / 100 + "";
        return e
    }, y = function (t) {
        var e = t.match(/^(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)$/);
        return !(!e || !e[5]) && e[2] + "月" + e[3] + "日 " + e[4] + ":" + e[5]
    }, w = function (t) {
        var e = t.match(/^(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)$/), i = new Date;
        i.setFullYear(e[1]), i.setMonth(e[2]), i.setDate(e[3]), i.setHours(e[4]), i.setMinutes(e[5]), i.setSeconds(e[6]);
        var n = (new Date).getTime();
        return n > i.getTime()
    }, x = function (t) {
        var e = {
            1306029: "0分钟",
            1306030: "5分钟",
            1306031: "10分钟",
            1324045: "1分钟",
            1324046: "2分钟",
            1324047: "3分钟",
            1324048: "4分钟"
        };
        return e[t] ? e[t] : "未知时间"
    }, bbbbbbbbb = function (t) {
        return null !== l.isVip ? void t(l.isVip, l.vipInfo) : void txv.vip.getVipInfo().done(function (e) {
                e.vip ? (t(!0, e), l.isVip = !0) : (t(!1, e), l.isVip = !1), l.vipInfo = e
            }).fail(function () {
                t(!1, {})
            })
    }, k = function (t) {
        $.ajax({
            url: "//pay.video.qq.com/fcgi-bin/pay",
            dataType: "jsonp",
            CSRF: !0,
            data: {id: COVER_INFO.id, uin: txv.login.getUin(), otype: "json", isneedmovie: 1},
            success: function (e) {
                e.valid_days ? t(e.valid_days) : txv.tips.Msg({
                        title: "影片数据读取错误，请刷新重试",
                        buttons: ["刷新"]
                    }).done(function () {
                        window.location.reload()
                    })
            },
            error: function () {
                txv.tips.Msg({title: "影片数据读取错误，请刷新重试", buttons: ["刷新"]}).done(function () {
                    window.location.reload()
                })
            }
        })
    }, O = function (t, e) {
        var i = $.extend({aid_version: "V0", key4: 9, key11: 2, _scene: 2}, e), n = $.pay(i, "aid");
        $.pay_qrimg({
            id: t, pay_type: 0, use_ws: !1, aid: n, scan_suc: function () {
                a.click("vip_layer:scanSucc")
            }, pay_suc: function () {
                window.location.reload()
            }
        })
    }, C = function (t) {
        "undefined" == typeof $.pay ? $.getScript("//vm.gtimg.cn/tencentvideo_v1/script/vip.minipay.js", function () {
                t()
            }) : t()
    }, I = function () {
        txv.login.addCloseLoginCallback(function () {
            0 !== $(".mask_layer").length && 1 !== $(".mask_layer:hidden").length || 1 !== $(".tvip_layer").length || txv.login.showMask()
        })
    }, E = function (t) {
        return null !== l.bindAccount ? void t(l.bindAccount) : void $.ajax({
                url: "//pay.video.qq.com/fcgi-bin/check_bindaccount?otype=json",
                dataType: "jsonp",
                CSRF: !0,
                success: function (e) {
                    return e && e.result && 0 == e.result.code && 1 == e.isVip ? (t(e), void(l.bindAccount = e)) : (t(!1), void(l.bindAccount = !1))
                },
                error: function (e) {
                    t(!1)
                }
            })
    }, T = function (t, e, i) {
        E(function (n) {
            if (n) {
                if (t.find(".tvip_content").append(o), "wx" === n.bind_type)var a = "您的微信帐号 " + n.account_id + "已是会员，"; else var a = "您的QQ帐号 " + n.account_id + "已是会员，";
                t.find("#bind_account_row .tvip_change_txt").html(a), t.find("#bind_account_row .tvip_login_txt").unbind("click").bind("click", function () {
                    return txv.login.openLoginSingle({
                        success: function () {
                            window.location.reload()
                        }
                    }, n.bind_type), !1
                }), e && e()
            } else i && i()
        })
    }, V = !1, P = function (t) {
        t.find("#pc_client_open, #pc_client_down").length > 0 || txv.ua.windows && c.isPcClientExist().then(function () {
            t.find(".tvip_content").append(r), t.find("#pc_client_open").unbind("click").bind("click", function () {
                return c.openClient(1, "web.vip"), !1
            }).show()
        }).fail(function () {
            t.find(".tvip_content").append(s);
            var e = t.find("#pc_client_down");
            e.unbind("click").bind("click", function () {
                return console.log("down"), location.href = "//node.video.qq.com/x/api/download_pc", !1
            }).show(), txv.ua.ie ? !V && txv.clipboard ? (V = !0, n = txv.clipboard.to({
                        el: e[0],
                        text: "qqlivechannel=channel1.vip"
                    })) : n && n.bindEl(e) : txv.clipboard && txv.clipboard.to({
                    el: e[0],
                    text: "qqlivechannel=channel1.vip"
                })
        })
    }, q = function () {
        return 2 == COVER_INFO.typeid ? (COVER_INFO.episodeVip = parseInt(COVER_INFO.episodeVip, 10), COVER_INFO.episodeCurrent = parseInt(COVER_INFO.episodeCurrent, 10), COVER_INFO.episodeAll = parseInt(COVER_INFO.episodeAll, 10), COVER_INFO.episodeVip == COVER_INFO.episodeCurrent && COVER_INFO.episodeCurrent < COVER_INFO.episodeAll ? "开通VIP会员免费看" : COVER_INFO.episodeCurrent < COVER_INFO.episodeAll ? "开通VIP会员抢先看" : "开通VIP会员看全集") : "开通VIP会员免费看"
    };
    t.exports = {
        clearCache: d,
        checkPaid: m,
        getUserTicket: v,
        getEventText: h,
        getExpireDays: p,
        getFormatPrice: g,
        getTrailerDate: y,
        isBeforDate: w,
        getTryTime: x,
        getVipInfo: bbbbbbbbb,
        showFixedWindow: f,
        getVideoDays: k,
        getExpDate: _,
        setQrImage: O,
        loadMinipayJS: C,
        checkLoginMask: I,
        checkBindAccount: T,
        checkPcClient: P,
        getOpenVIPText: q
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="tvip_ft" id="bind_account_row">\n    <div class="tvip_change_login">\n        <span class="tvip_change_txt">你的微信帐号learzheng已是VIP会员，</span>\n        <a class="tvip_login_txt" href="javascript:;">切换登录</a>\n    </div>\n</div>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="tvip_ft tvip_ft_btn" id="pc_client_down">\n    <a class="tvip_btn_pcdown" href="javascript:;"><span class="tvip_icon_down"></span><span class="tvip_down_txt">下载PC客户端，免费享1080P</span></a>\n</div>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="tvip_ft tvip_ft_btn" id="pc_client_open">\n    <a class="tvip_btn_pcdown" href="javascript:;"><span class="tvip_icon_play"></span><span class="tvip_down_txt">用PC客户端看，免费享1080P</span></a>\n</div>'
    }
}, function (t, e, i) {
    var n = i(69), a = i(70), o = i(58), s = i(71), r = (i(72), i(73)), c = i(63), l = i(64), d = (i(17), function (t, e, i) {
        var d = $(t), p = l.getExpireDays(e.endTime);
        d.addClass("mod_side_vip"), l.getEventText(function (t) {
            if (COVER_INFO.payStatus == c.SINGLE_BUY) {
                if (d.removeClass("mod_side_vip_wechat"), 100 == COVER_INFO.vipDiscount) {
                    d.html(o), d.find(".btn_vip_big").addClass("vip_singlebuy_click");
                    var u = l.getFormatPrice(VIDEO_INFO.singlePrice);
                    d.find(".btn_vip_big .icon_text").html(u + "元购买本片")
                } else {
                    d.html(r), d.find(".btn_vip_big").addClass("vip_singlebuy_click"), d.find(".link_vip_big").addClass("vip_minipay_click");
                    var u = l.getFormatPrice(VIDEO_INFO.singlePrice), _ = l.getFormatPrice(VIDEO_INFO.vipPrice);
                    d.find(".btn_vip_big .icon_text").html("VIP享" + _ + '购买本片 <span style="text-decoration:line-through;">原价' + u + "元</span>"), d.find(".link_vip_big span.icon_text").html("续费VIP看更多大片 " + t)
                }
                i()
            } else COVER_INFO.payStatus == c.VIP_MONTHLY || COVER_INFO.payStatus == c.VIP_ONLY ? (p > 7 ? "" !== t && (d.addClass("mod_side_vip_wechat"), d.html(n), d.find(".vip_qr .qr_title").html("微信扫一扫，续费VIP"), d.find(".vip_qr .qr_desc").html(t), d.find(".txt_vip_big span.icon_text").html('你可免费观看 <span class="num">VIP到期时间 ' + e.endTime.substr(0, 10) + "</span>")) : (d.addClass("mod_side_vip_wechat"), d.html(n), d.find(".vip_qr .qr_title").html("还有" + p + "天VIP到期！续费VIP"), "" === t ? d.find(".txt_vip_big span.icon_text").html('你可免费观看 <span class="num">VIP到期时间 ' + e.endTime.substr(0, 10) + "</span>") : d.find(".txt_vip_big span.icon_text").html(t), d.find(".txt_vip_big span.icon_text").html('您是VIP可免费观看 <span class="num">VIP到期时间 ' + e.endTime.substr(0, 10) + "</span>")), i()) : COVER_INFO.payStatus == c.VIP_TICKET && l.checkPaid(function (e, n) {
                    e ? (d.removeClass("mod_side_vip_wechat"), d.html(s), d.find(".time_vip_big span.icon_text").html('您已经购买本片 有效期至 <span class="num">' + n.end + "</span>")) : l.getUserTicket(function (e) {
                            if (e > 0) d.removeClass("mod_side_vip_wechat"), d.html(r), d.find(".btn_vip_big").addClass("vip_ticket_click"), d.find(".link_vip_big").addClass("vip_minipay_click"), d.find(".btn_vip_big span.icon_text").html('你有<span class="num">' + e + "</span>张观影券可用，用券观看"), d.find(".link_vip_big span.icon_text").html("续费VIP会员看更多大片 " + t); else {
                                d.addClass("mod_side_vip_wechat"), d.html(a), d.find(".vip_qr .qr_title").html("观影券已用完 续费VIP立即获赠"), "" !== t && d.find(".vip_qr .qr_desc").html(t), d.find(".link_vip_big").addClass("vip_singlebuy_click");
                                var n = l.getFormatPrice(VIDEO_INFO.singlePrice), o = l.getFormatPrice(VIDEO_INFO.vipPrice);
                                d.find(".link_vip_big span.icon_text").html("VIP享" + o + '元购买本片 <span style="text-decoration:line-through;">原价' + n + "元</span>")
                            }
                            i()
                        })
                })
        })
    });
    t.exports = {
        build: function (t, e, i) {
            d(t, e, i)
        }
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="vip_qr">\n    <span class="qr_corner"></span>\n    <span class="qr_video_mm"></span>\n    <div class="qr_content">\n        <div class="qr_title">微信扫一扫，轻松开会员</div>\n        <div class="qr_desc">尊享看大片、免广告等权益</div>\n    </div>\n    <div class="vip_qr_pic">\n        <img id="vip_qrcode_img" />\n    </div>\n</div>\n\n<span class="txt_vip_big">\n    <span class="icon_text"> 开通VIP看更多大片 暑促新人6折 </span>\n</span>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="vip_qr">\n    <span class="qr_corner"></span>\n    <span class="qr_video_mm"></span>\n    <div class="qr_content">\n        <div class="qr_title">微信扫一扫，轻松开会员</div>\n        <div class="qr_desc">尊享看大片、免广告等权益</div>\n    </div>\n    <div class="vip_qr_pic">\n        <img id="vip_qrcode_img" />\n    </div>\n</div>\n\n<a href="javascript:;" class="link_vip_big">\n    <span class="icon_text"> 暑期5折开会员 看大片 </span>\n    <i class="icon_sm icon_right_sm"><svg class="svg_icon svg_icon_right_sm" viewBox="0 0 16 16"><path d="M11.71 8.716L7.716 12.71a1.01 1.01 0 0 1-1.427-1.427L9.573 8 6.289 4.716a1.01 1.01 0 0 1 1.427-1.427l3.994 3.994c.198.198.296.458.295.717.001.259-.097.518-.295.716z"></path></svg></i>\n</a>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<span class="time_vip_big">\n    <span class="icon_text">你可免费观看 <span class="num">VIP按月支付中</span></span>\n</span>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="vip_qr">\n    <span class="qr_corner"></span>\n    <span class="qr_video_mm"></span>\n    <div class="qr_content">\n        <div class="qr_title">微信扫一扫，轻松开会员</div>\n        <div class="qr_desc">支付完成后点击刷新</div>\n    </div>\n</div>\n\n<a href="javascript:;" class="link_vip_big">\n    <span class="icon_text"> 暑期5折开会员 看大片 </span>\n    <i class="icon_sm icon_right_sm"><svg class="svg_icon svg_icon_right_sm" viewBox="0 0 16 16"><path d="M11.71 8.716L7.716 12.71a1.01 1.01 0 0 1-1.427-1.427L9.573 8 6.289 4.716a1.01 1.01 0 0 1 1.427-1.427l3.994 3.994c.198.198.296.458.295.717.001.259-.097.518-.295.716z"></path></svg></i>\n</a>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<a href="javascript:;" class="btn_vip_big">\n    <span class="icon_text">你有<span class="num">5</span>张观影券可用，用券观看</span>\n</a>\n<a href="javascript:;" class="link_vip_big">\n    <i class="icon_sm icon_vip_flat_sm"><svg class="svg_icon svg_icon_vip_flat_sm" viewBox="0 0 16 16"><path d="M14.746 7.105l-2.584 2.959.422 4.038-.014.012c.007.042.024.081.024.125 0 .424-.329.768-.734.768a.713.713 0 0 1-.273-.057l-.011.009-3.57-1.685-3.539 1.647-.008-.005a.695.695 0 0 1-.33.091c-.406 0-.734-.344-.734-.768 0-.032.013-.059.017-.09l-.009-.006.17-1.56c.475-.108.943-.233 1.4-.383l-.098.805 3.115-1.294 3.073 1.292-.351-3.232 2.291-2.737-.486-.085c.346-.434.667-.889.967-1.359l.942.189.006.02a.75.75 0 0 1 .571.733.77.77 0 0 1-.257.573zm-1.618-2.671c-2.169 3.982-5.932 6.722-10.238 7.351a.63.63 0 0 1-.345.073c-.385-.039-.666-.41-.628-.829a.729.729 0 0 1 .607-.669l-.003-.03c3.946-.511 7.401-3.005 9.388-6.636.127-.27.394-.444.688-.414.385.039.666.41.627.829a.785.785 0 0 1-.104.32l.008.005zM7.99 3.014L6.348 6.441l-3.347.579 1.685 2.042a12.73 12.73 0 0 1-1.333.434L1.268 7.107a.773.773 0 0 1-.259-.575c0-.345.221-.626.52-.723l.008-.034 3.928-.776 1.869-3.597h.03a.724.724 0 0 1 .642-.416c.279 0 .513.169.637.409h.028l1.722 3.31c-.318.429-.659.839-1.027 1.224L7.99 3.014z"></path></svg></i>\n    <span class="icon_text"> 开通VIP看更多大片 暑促新人6折 </span>\n    <i class="icon_sm icon_right_sm"><svg class="svg_icon svg_icon_right_sm" viewBox="0 0 16 16"><path d="M11.71 8.716L7.716 12.71a1.01 1.01 0 0 1-1.427-1.427L9.573 8 6.289 4.716a1.01 1.01 0 0 1 1.427-1.427l3.994 3.994c.198.198.296.458.295.717.001.259-.097.518-.295.716z"></path></svg></i>\n</a>'
    }
}, function (t, e, i) {
    var n = (i(61), i(62)), a = i(75), o = i(58), s = i(71), r = i(73), c = i(76), l = i(63), d = i(64), p = i(17), u = "vip_rightpanel:", _ = function (t, e, i, _) {
        COVER_INFO.payStatus == l.SINGLE_BUY ? d.checkPaid(function (e, n) {
                if (e) d.getEventText(function (e) {
                    "" !== e ? (t.html(a), t.find(".time_vip_normal span.icon_text").html('您已购买本片 <span class="num">有效期至 ' + n.end + "</span>"), t.find(".link_vip_normal span.icon_text").html("续费VIP看更多大片 " + e), t.find(".link_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), p.click(u + "showOpenVip")) : (t.html(s), t.find(".time_vip_big span.icon_text").html('您已购买本片 <span class="num">有效期至 ' + n.end + "</span>")), _()
                }); else if (100 == COVER_INFO.vipDiscount) {
                    t.html(o), t.find(".btn_vip_big").addClass("vip_singlebuy_click");
                    var c = d.getFormatPrice(VIDEO_INFO.singlePrice);
                    t.find(".btn_vip_big .icon_text").html(c + "元购买本片")
                } else {
                    t.html(r), t.find(".btn_vip_big").addClass("vip_singlebuy_click"), t.find(".link_vip_big").addClass("vip_minipay_click");
                    var c = d.getFormatPrice(VIDEO_INFO.singlePrice), l = d.getFormatPrice(VIDEO_INFO.vipPrice);
                    t.find(".btn_vip_big .icon_text").html("VIP享" + l + '元购买本片 <span style="text-decoration:line-through;">原价' + c + "元</span>"), t.find(".link_vip_big span.icon_text").html("续费VIP看更多大片 " + i)
                }
                _()
            }) : COVER_INFO.payStatus == l.VIP_MONTHLY ? ("" == i || (t.html(c), "HLWHF" == e.servicetype ? t.find(".time_vip_big .icon_text").html('你可免费观看 <span class="num">VIP按月支付中</span>') : t.find(".time_vip_big .icon_text").html('你可免费观看 <span class="num">VIP到期时间 ' + e.endTime.substr(0, 10) + "</span>"), t.find(".link_vip_big").addClass("vip_minipay_click"), t.find(".link_vip_big .icon_text").html("续费VIP看更多大片 " + i)), _()) : COVER_INFO.payStatus == l.VIP_ONLY ? ("" == i || (t.html(c), "HLWHF" == e.servicetype ? t.find(".time_vip_big .icon_text").html('你可免费观看 <span class="num">VIP按月支付中</span>') : t.find(".time_vip_big .icon_text").html('你可免费观看 <span class="num">VIP到期时间 ' + e.endTime.substr(0, 10) + "</span>"), t.find(".link_vip_big").addClass("vip_minipay_click"), t.find(".link_vip_big .icon_text").html("续费VIP看更多大片 " + i)), _()) : COVER_INFO.payStatus == l.VIP_TICKET && d.checkPaid(function (e, o) {
                        e ? d.getEventText(function (e) {
                                "" !== e ? (t.html(a), t.find(".time_vip_normal span.icon_text").html('您已购买本片 <span class="num">有效期至 ' + o.end + "</span>"), t.find(".link_vip_normal span.icon_text").html("续费VIP看更多大片 " + e), t.find(".link_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), p.click(u + "showOpenVip")) : (t.html(s), t.find(".time_vip_big span.icon_text").html('您已购买本片 <span class="num">有效期至 ' + o.end + "</span>")), _()
                            }) : d.getUserTicket(function (e) {
                                if (e > 0) t.html(r), t.find(".btn_vip_big").addClass("vip_ticket_click"), t.find(".link_vip_big").addClass("vip_minipay_click"), t.find(".btn_vip_big span.icon_text").html('你有<span class="num">' + e + "</span>张观影券可用，用券观看"), t.find(".link_vip_big span.icon_text").html("续费VIP看更多大片 " + i); else {
                                    t.html(n), t.find(".btn_vip_normal").addClass("vip_minipay_click"), t.find(".btn_vip_normal span.icon_text").html("观影券已用完 续费VIP立即获赠"), t.find(".link_vip_normal").addClass("vip_singlebuy_click");
                                    var a = d.getFormatPrice(VIDEO_INFO.singlePrice), o = d.getFormatPrice(VIDEO_INFO.vipPrice);
                                    t.find(".link_vip_normal span.icon_text").html("VIP享" + o + '元购买本片，<span style="text-decoration:line-through;">非会员原价' + a + "元</span>")
                                }
                                _()
                            })
                    })
    }, f = function (t, e, i, n) {
        COVER_INFO.payStatus == l.SINGLE_BUY ? _(t, e, i, n) : COVER_INFO.payStatus == l.VIP_MONTHLY ? (t.html(a), "HLWHF" == e.servicetype ? t.find(".time_vip_normal .icon_text").html('你是VIP可免费观看 <span class="num">VIP按月支付中</span>') : t.find(".time_vip_normal .icon_text").html('你可免费观看 <span class="num">VIP即将到期 ' + e.endTime.substr(0, 10) + "</span>"), t.find(".link_vip_normal .icon_text").html("续费VIP " + i), t.find(".link_vip_normal").addClass("vip_minipay_click"), n()) : COVER_INFO.payStatus == l.VIP_ONLY ? (t.html(a), "HLWHF" == e.servicetype ? t.find(".time_vip_normal .icon_text").html('你是VIP可免费观看 <span class="num">VIP按月支付中</span>') : t.find(".time_vip_normal .icon_text").html('你可免费观看 <span class="num">VIP即将到期 ' + e.endTime.substr(0, 10) + "</span>"), t.find(".link_vip_normal .icon_text").html("续费VIP " + i), t.find(".link_vip_normal").addClass("vip_minipay_click"), n()) : COVER_INFO.payStatus == l.VIP_TICKET && _(t, e, i, n)
    }, v = function (t, e, i) {
        var n = $(t), a = d.getExpireDays(e.endTime);
        n.removeClass("mod_side_vip_wechat").addClass("mod_side_vip"), d.getEventText(function (t) {
            a > 7 ? _(n, e, t, i) : f(n, e, t, i)
        })
    };
    t.exports = {
        build: function (t, e, i) {
            v(t, e, i)
        }
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<span class="time_vip_normal">\n    <span class="icon_text">你可免费观看 <span class="num">VIP到期时间 <span class="vip_exp_date">2016-06-28</span></span></span>\n</span>\n<a href="javascript:;" class="link_vip_normal">\n    <i class="icon_sm icon_vip_flat_sm"><svg class="svg_icon svg_icon_vip_flat_sm" viewBox="0 0 16 16"><path d="M14.746 7.105l-2.584 2.959.422 4.038-.014.012c.007.042.024.081.024.125 0 .424-.329.768-.734.768a.713.713 0 0 1-.273-.057l-.011.009-3.57-1.685-3.539 1.647-.008-.005a.695.695 0 0 1-.33.091c-.406 0-.734-.344-.734-.768 0-.032.013-.059.017-.09l-.009-.006.17-1.56c.475-.108.943-.233 1.4-.383l-.098.805 3.115-1.294 3.073 1.292-.351-3.232 2.291-2.737-.486-.085c.346-.434.667-.889.967-1.359l.942.189.006.02a.75.75 0 0 1 .571.733.77.77 0 0 1-.257.573zm-1.618-2.671c-2.169 3.982-5.932 6.722-10.238 7.351a.63.63 0 0 1-.345.073c-.385-.039-.666-.41-.628-.829a.729.729 0 0 1 .607-.669l-.003-.03c3.946-.511 7.401-3.005 9.388-6.636.127-.27.394-.444.688-.414.385.039.666.41.627.829a.785.785 0 0 1-.104.32l.008.005zM7.99 3.014L6.348 6.441l-3.347.579 1.685 2.042a12.73 12.73 0 0 1-1.333.434L1.268 7.107a.773.773 0 0 1-.259-.575c0-.345.221-.626.52-.723l.008-.034 3.928-.776 1.869-3.597h.03a.724.724 0 0 1 .642-.416c.279 0 .513.169.637.409h.028l1.722 3.31c-.318.429-.659.839-1.027 1.224L7.99 3.014z"></path></svg></i>\n    <span class="icon_text"> 续费VIP会员 暑促新人6折 </span>\n    <i class="icon_sm icon_right_sm"><svg class="svg_icon svg_icon_right_sm" viewBox="0 0 16 16"><path d="M11.71 8.716L7.716 12.71a1.01 1.01 0 0 1-1.427-1.427L9.573 8 6.289 4.716a1.01 1.01 0 0 1 1.427-1.427l3.994 3.994c.198.198.296.458.295.717.001.259-.097.518-.295.716z"></path></svg></i>\n</a>\n<!-- 侧边二维码 -->\n<div class="vip_qr_side vip_qr_hover">\n    <div class="vip_qr_pic">\n        <div id="vmm_moe" class="qr_npc"></div>\n        <img id="vip_qrcode_img" />\n    </div>\n    <!-- <span class="qr_video_mm"><i class="qr_video_mm_inner"></i></span> -->\n</div>\n<!-- 浮层二维码 -->\n<div class="vip_qr_pop none">\n    <i class="triangle_up"></i>\n    <div class="vip_qr_pic">\n        <img class="vip_qrcode_img" />\n    </div>\n    <span class="qr_video_mm"></span>\n    <div class="qr_title">微信扫码快速开通会员</div>\n</div>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<span class="time_vip_big">\n    <span class="icon_text">你可免费观看 <span class="num">VIP按月支付中</span></span>\n</span>\n<a href="javascript:;" class="link_vip_big">\n    <i class="icon_sm icon_vip_flat_sm"><svg class="svg_icon svg_icon_vip_flat_sm" viewBox="0 0 16 16"><path d="M14.746 7.105l-2.584 2.959.422 4.038-.014.012c.007.042.024.081.024.125 0 .424-.329.768-.734.768a.713.713 0 0 1-.273-.057l-.011.009-3.57-1.685-3.539 1.647-.008-.005a.695.695 0 0 1-.33.091c-.406 0-.734-.344-.734-.768 0-.032.013-.059.017-.09l-.009-.006.17-1.56c.475-.108.943-.233 1.4-.383l-.098.805 3.115-1.294 3.073 1.292-.351-3.232 2.291-2.737-.486-.085c.346-.434.667-.889.967-1.359l.942.189.006.02a.75.75 0 0 1 .571.733.77.77 0 0 1-.257.573zm-1.618-2.671c-2.169 3.982-5.932 6.722-10.238 7.351a.63.63 0 0 1-.345.073c-.385-.039-.666-.41-.628-.829a.729.729 0 0 1 .607-.669l-.003-.03c3.946-.511 7.401-3.005 9.388-6.636.127-.27.394-.444.688-.414.385.039.666.41.627.829a.785.785 0 0 1-.104.32l.008.005zM7.99 3.014L6.348 6.441l-3.347.579 1.685 2.042a12.73 12.73 0 0 1-1.333.434L1.268 7.107a.773.773 0 0 1-.259-.575c0-.345.221-.626.52-.723l.008-.034 3.928-.776 1.869-3.597h.03a.724.724 0 0 1 .642-.416c.279 0 .513.169.637.409h.028l1.722 3.31c-.318.429-.659.839-1.027 1.224L7.99 3.014z"></path></svg></i>\n    <span class="icon_text"> 开通VIP看更多大片 暑促新人6折 </span>\n    <i class="icon_sm icon_right_sm"><svg class="svg_icon svg_icon_right_sm" viewBox="0 0 16 16"><path d="M11.71 8.716L7.716 12.71a1.01 1.01 0 0 1-1.427-1.427L9.573 8 6.289 4.716a1.01 1.01 0 0 1 1.427-1.427l3.994 3.994c.198.198.296.458.295.717.001.259-.097.518-.295.716z"></path></svg></i>\n</a>'
    }
}, function (t, e, i) {
    var n = i(58), a = i(73), o = i(71), s = i(75), r = (i(72), i(78)), c = i(70), l = i(63), d = i(64), p = i(17), u = "vip_rightpanel:", _ = function (t, e, i) {
        var _ = $(t);
        _.addClass("mod_side_vip");
        var f = d.getOpenVIPText();
        d.checkPaid(function (t, e) {
            t ? d.getEventText(function (t) {
                    _.removeClass("mod_side_vip_wechat"), "" !== t ? (_.html(s), _.find(".time_vip_normal span.icon_text").html('您已购买本片 <span class="num">有效期至 ' + e.end + "</span>"), _.find(".link_vip_normal span.icon_text").html("开通VIP看更多大片 " + t), _.find(".link_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), p.click(u + "showOpenVip")) : (_.html(o), _.find(".time_vip_big span.icon_text").html('您已购买本片 <span class="num">有效期至 ' + e.end + "</span>")), i()
                }) : d.getEventText(function (t) {
                    if (COVER_INFO.payStatus == l.SINGLE_BUY) {
                        if (100 == COVER_INFO.vipDiscount) {
                            _.removeClass("mod_side_vip_wechat"), _.html(n), _.find(".btn_vip_big").addClass("vip_singlebuy_click");
                            var e = d.getFormatPrice(VIDEO_INFO.singlePrice);
                            _.find(".btn_vip_big .icon_text").html(e + "元购买本片")
                        } else {
                            _.addClass("mod_side_vip_wechat"), _.html(c);
                            var o = d.getFormatPrice(VIDEO_INFO.vipPrice);
                            _.find(".vip_qr .qr_title").html("开通VIP享" + o + "元购买"), "" !== t && _.find(".vip_qr .qr_desc").html(t);
                            var e = d.getFormatPrice(VIDEO_INFO.singlePrice);
                            _.find(".link_vip_big span.icon_text").html("非会员原价" + e + "元购买本片"), _.find(".link_vip_big").addClass("vip_singlebuy_click")
                        }
                        i()
                    } else if (COVER_INFO.payStatus == l.VIP_MONTHLY) d.getUserTicket(function (e) {
                        if (e > 0) _.removeClass("mod_side_vip_wechat"), _.html(a), _.find(".btn_vip_big").addClass("vip_ticket_click"), _.find(".link_vip_big").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), _.find(".btn_vip_big span.icon_text").html('你有<span class="num">' + e + "</span>张观影券可用，用券观看"), _.find(".link_vip_big span.icon_text").html("开通VIP会员看更多大片 " + t), p.click(u + "showOpenVip"); else {
                            _.addClass("mod_side_vip_wechat"), _.html(c), _.find(".vip_qr .qr_title").html(f), "" !== t && _.find(".vip_qr .qr_desc").html(t);
                            var n = d.getFormatPrice(VIDEO_INFO.singlePrice);
                            _.find(".link_vip_big span.icon_text").html("非会员原价" + n + "元购买本片"), _.find(".link_vip_big").addClass("vip_singlebuy_click")
                        }
                        i()
                    }); else if (COVER_INFO.payStatus == l.VIP_ONLY) _.addClass("mod_side_vip_wechat"), _.html(r), _.find(".vip_qr .qr_title").html(f), "" !== t && _.find(".vip_qr .qr_desc").html(t), i(); else if (COVER_INFO.payStatus == l.VIP_TICKET) d.getUserTicket(function (e) {
                        if (e > 0) _.removeClass("mod_side_vip_wechat"), _.html(a), _.find(".btn_vip_big").addClass("vip_ticket_click"), _.find(".link_vip_big").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), _.find(".btn_vip_big span.icon_text").html('你有<span class="num">' + e + "</span>张观影券可用，用券观看"), _.find(".link_vip_big span.icon_text").html("开通VIP看更多大片 " + t), p.click(u + "showOpenVip"); else {
                            _.addClass("mod_side_vip_wechat"), _.html(c), _.find(".vip_qr .qr_title").html("开通VIP会员用券看"), "" !== t && _.find(".vip_qr .qr_desc").html(t);
                            var n = d.getFormatPrice(VIDEO_INFO.singlePrice);
                            _.find(".link_vip_big span.icon_text").html("非会员原价" + n + "元购买本片"), _.find(".link_vip_big").addClass("vip_singlebuy_click")
                        }
                        i()
                    }); else if (VIDEO_INFO.isTrailer) {
                        if (_.addClass("mod_side_vip_wechat"), _.html(r), "" !== t && _.find(".vip_qr .qr_desc").html(t), COVER_INFO.vipPullText && "null" !== COVER_INFO.vipPullText) _.find(".vip_qr .qr_title").html(COVER_INFO.vipPullText); else {
                            var s = d.getTrailerDate(COVER_INFO.vipOnlineDate);
                            s && _.find(".vip_qr .qr_title").html("开通VIP " + s + "看全片")
                        }
                        i()
                    }
                })
        })
    };
    t.exports = {
        build: function (t, e, i) {
            _(t, e, i)
        }
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="vip_qr">\n    <span class="qr_corner"></span>\n    <span class="qr_video_mm"></span>\n    <div class="qr_content">\n        <div class="qr_title">微信扫一扫，轻松开会员</div>\n        <div class="qr_desc">尊享看大片、免广告等权益</div>\n    </div>\n    <div class="vip_qr_pic">\n        <img id="vip_qrcode_img" />\n    </div>\n</div>'
    }
}, function (t, e, i) {
    var n = i(61), a = i(62), o = i(73), s = i(58), r = i(71), c = i(75), l = i(63), d = i(64), p = i(17), u = "vip_rightpanel:", _ = function (t, e, i) {
        var _ = $(t);
        _.removeClass("mod_side_vip_wechat").addClass("mod_side_vip");
        var f = d.getOpenVIPText();
        d.checkPaid(function (t, e) {
            t ? d.getEventText(function (t) {
                    "" !== t ? (_.html(c), _.find(".time_vip_normal span.icon_text").html('您已购买本片 <span class="num">有效期至 ' + e.end + "</span>"), _.find(".link_vip_normal span.icon_text").html("开通VIP看更多大片 " + t), _.find(".link_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), p.click(u + "showOpenVip")) : (_.html(r), _.find(".time_vip_big span.icon_text").html('您已购买本片 <span class="num">有效期至 ' + e.end + "</span>")), i()
                }) : d.getEventText(function (t) {
                    if (COVER_INFO.payStatus == l.SINGLE_BUY) {
                        if (100 == COVER_INFO.vipDiscount) {
                            _.html(s), _.find(".btn_vip_big").addClass("vip_singlebuy_click");
                            var e = d.getFormatPrice(VIDEO_INFO.singlePrice);
                            _.find(".btn_vip_big .icon_text").html(e + "元购买本片")
                        } else {
                            _.html(a), _.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), _.find(".link_vip_normal").addClass("vip_singlebuy_click");
                            var e = d.getFormatPrice(VIDEO_INFO.singlePrice), r = d.getFormatPrice(VIDEO_INFO.vipPrice);
                            _.find(".btn_vip_normal .icon_text").html("开通VIP享" + r + "元购买 " + t), _.find(".link_vip_normal span.icon_text").html("非会员原价" + e + "元购买本片"), p.click(u + "showOpenVip")
                        }
                        i()
                    } else if (COVER_INFO.payStatus == l.VIP_MONTHLY) d.getUserTicket(function (e) {
                        if (e > 0) _.html(o), _.find(".btn_vip_big").addClass("vip_ticket_click"), _.find(".link_vip_big").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), _.find(".btn_vip_big span.icon_text").html('你有<span class="num">' + e + "</span>张观影券可用，用券观看"), _.find(".link_vip_big span.icon_text").html("开通VIP看更多大片 " + t), p.click(u + "showOpenVip"); else {
                            _.html(a), _.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), _.find(".link_vip_normal").addClass("vip_singlebuy_click"), _.find(".btn_vip_normal span.icon_text").html(f + " " + t);
                            var n = d.getFormatPrice(VIDEO_INFO.singlePrice);
                            _.find(".link_vip_normal span.icon_text").html("非会员原价" + n + "元购买本片"), p.click(u + "showOpenVip")
                        }
                        i()
                    }); else if (COVER_INFO.payStatus == l.VIP_ONLY) _.html(n), _.find("a.btn_vip_normal span.icon_text").html(f + " " + t), _.find("a.btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), _.find(".txt_vip_normal span.icon_text").html("尊享看大片，免广告等权益"), p.click(u + "showOpenVip"), i(); else if (COVER_INFO.payStatus == l.VIP_TICKET) d.getUserTicket(function (e) {
                        if (e > 0) _.html(o), _.find(".btn_vip_big").addClass("vip_ticket_click"), _.find(".link_vip_big").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), _.find(".btn_vip_big span.icon_text").html('你有<span class="num">' + e + "</span>张观影券可用，用券观看"), _.find(".link_vip_big span.icon_text").html("开通VIP看更多大片 " + t), p.click(u + "showOpenVip"); else {
                            _.html(a), _.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), _.find(".btn_vip_normal span.icon_text").html("开通VIP会员用券看 " + t), _.find(".link_vip_normal").addClass("vip_singlebuy_click");
                            var n = d.getFormatPrice(VIDEO_INFO.singlePrice);
                            _.find(".link_vip_normal span.icon_text").html("非会员原价" + n + "元购买本片"), p.click(u + "showOpenVip")
                        }
                        i()
                    }); else if (VIDEO_INFO.isTrailer) {
                        if (_.html(n), _.find(".btn_vip_normal").addClass("vip_minipay_click").attr("_stat", "player_rightpanel"), "" !== t && _.find(".txt_vip_normal .icon_text").html(t), p.click(u + "showOpenVip"), COVER_INFO.vipPullText && "null" !== COVER_INFO.vipPullText) _.find(".btn_vip_normal .icon_text").html(COVER_INFO.vipPullText); else {
                            var c = d.getTrailerDate(COVER_INFO.vipOnlineDate);
                            c && _.find(".btn_vip_normal .icon_text").html("开通VIP " + c + "看全片")
                        }
                        i()
                    }
                })
        })
    };
    t.exports = {
        build: function (t, e, i) {
            _(t, e, i)
        }
    }
}, function (t, e, i) {
    var n = i(81), a = i(82), o = (window.PageMsg, function (t, e) {
    }), s = function () {
        function t(t) {
            var i = new Image, n = "";
            $.each(t, function (t, e) {
                n += t + "=" + e + "&"
            }), n += "rand=" + Math.random(), i.src = e + "?" + n
        }

        if ("wx" == txv.login.getLoginType())return void a();
        txv.login.showMask();
        var e = "//pay.video.qq.com/fcgi-bin/payreport";
        !function (e) {
            var i = !1;
            (new Date).getTime();
            e.off("success").on("success", function () {
                i = !0, t({
                    plat: 0,
                    step: 6,
                    uin: txv.login.getUin(),
                    code_1: 0,
                    type: 2,
                    payitem: "1*" + COVER_INFO.id
                })
            }).off("close").on("close", function () {
                i && setTimeout(function () {
                    window.location.reload()
                }, 1e3), txv.login.hideMask()
            }).off("cancel").on("cancel", function () {
                txv.login.hideMask(), t({
                    plat: 0,
                    step: 7,
                    uin: txv.login.getUin(),
                    type: 2,
                    payitem: "1*" + COVER_INFO.id
                })
            }).off("priceerr").on("priceerr", function (t, e) {
                e.code == -11 ? txv.login.openLogin({
                        success: function () {
                            window.location.reload()
                        }
                    }) : (txv.login.hideMask(), o("支付失败", "错误码：" + e.code, "错误信息:" + e.msg, "确定", "-500", !0))
            }).off("frameload").on("frameload", function () {
                t({plat: 0, step: 1, uin: txv.login.getUin(), type: 2, payitem: "1*" + COVER_INFO.id})
            }).show({coverid: COVER_INFO.id, sandbox: !1})
        }(n)
    }, r = function () {
        if (txv.login.getLoginType() && txv.login.isStrongLogin()) s(); else {
            var t = {
                pay_type: 1, pay_suc: function () {
                    setTimeout(function () {
                        window.location.reload()
                    }, 1e3)
                }, success: function () {
                    txv.cookie.set("vip_singlebuy", "1"), window.location.reload();
                    var t = txv.login.getLoginType();
                    "qq" == t ? s() : "wx" == t && txv.login.bye_login()
                }
            };
            if ($("#ff_poptip").remove(), txv.login.showMask(), txv.login.isLowLogin()) {
                var e = txv.login.getLoginType();
                "qq" == e ? txv.login.openLoginSingle(t, "qq") : "wx" == e ? txv.login.openLoginSingle(t, "wx") : txv.login.openPayLogin(t)
            } else txv.login.openPayLogin(t)
        }
    };
    t.exports = r
}, function (t, e) {
    var i, n = $({}), a = !1, o = "//fusion.qzone.qq.com/fusion_loader?appid=1450000370&platform=website&v=20130717&maxage=864000", s = 1, r = {
        coverid: "",
        title: "正在为QQ帐号购买影片",
        zIndex: 9999,
        type: "",
        plat: 1,
        token: "",
        key: "",
        g_tk: "",
        uin: "",
        param: null,
        sandbox: !0,
        context: this
    }, c = {
        onSuccess: function (t) {
            n.trigger("success", t)
        }, onCancel: function (t) {
            n.trigger("cancel", t)
        }, onClose: function () {
            n.trigger("close")
        }, onLoadJsFail: function () {
            n.trigger("loadjsfail")
        }, onPriceErr: function (t, e) {
            n.trigger("priceerr", {code: t, msg: e})
        }, onFrameLoad: function () {
            n.trigger("frameload")
        }, onShown: function () {
            n.trigger("shown")
        }, onLoad: function () {
            n.trigger("load")
        }
    };
    n.setConfig = function (t) {
        return t = t || {}, $.extend(r, t), this
    }, n.show = function (t) {
        function e(t, n) {
            function l(t) {
                var e = new Image, i = "";
                $.each(t, function (t, e) {
                    i += t + "=" + e + "&"
                }), i += "rand=" + Math.random(), e.src = u + "?" + i
            }

            t = t || "pay.video.qq.com", n = n || 0;
            var p = (["//", t, "/fcgi-bin/price-cloud?otype=json"].join(""), (new Date).getTime()), u = "//pay.video.qq.com/fcgi-bin/payreport";
            $.ajax({
                url: "//pay.video.qq.com/fcgi-bin/price-cloud?otype=json",
                dataType: "jsonp",
                data: d,
                cache: !1,
                success: function (t) {
                    if (t && t.result && 0 == t.result.code) {
                        r.param = t.url_params;
                        var e = window.fusion2;
                        e && e.dialog && e.dialog.buy ? i = e.dialog.buy($.extend({}, r, c)) : a || $.getScript(o).done(function () {
                                i = window.fusion2.dialog.buy($.extend({}, r, c)), a = !1
                            }), l({
                            plat: 0,
                            step: 4,
                            costtime: (new Date).getTime() - p,
                            cginame: "price-cloud",
                            code_1: t.result.code,
                            msg: t.result.msg,
                            uin: txv.login.getUin(),
                            type: 2,
                            payitem: "1*" + COVER_INFO.id
                        })
                    } else t && t.result ? (c.onPriceErr(t.result.code, t.result.msg), l({
                            plat: 0,
                            step: 4,
                            costtime: (new Date).getTime() - p,
                            cginame: "price-cloud",
                            code_1: t.result.code,
                            msg: t.result.msg,
                            uin: txv.login.getUin(),
                            type: 2,
                            payitem: "1*" + COVER_INFO.id
                        })) : (l({
                            plat: 0,
                            step: 4,
                            costtime: (new Date).getTime() - p,
                            cginame: "price-cloud",
                            code_1: -99,
                            msg: "批价发货请求完成处理时发生错误",
                            uin: txv.login.getUin(),
                            type: 2,
                            payitem: "1*" + COVER_INFO.id
                        }), c.onPriceErr(-99, "批价发货请求完成处理时发生错误"))
                },
                error: function () {
                    n < s ? e("paybak.video.qq.com", ++n) : c.onPriceErr(-500, "批价发货请求发生错误"), l({
                        plat: 0,
                        step: 4,
                        costtime: (new Date).getTime() - p,
                        cginame: "price-cloud",
                        code_1: -500,
                        msg: "批价发货请求完成处理时发生错误",
                        uin: txv.login.getUin(),
                        type: 2,
                        payitem: "1*" + COVER_INFO.id
                    })
                }
            })
        }

        if (t.title = ["正在为QQ帐号", "（", txv.login.getUin(), "）购买影片"].join(""), n.setConfig(t), !r.coverid)return void r.onPriceErr(-199, "获取专辑id失败");
        var l = txv.cookie.get("skey"), d = {cid: r.coverid, g_tk: r.g_tk || (l ? $.time33(l) : ""), num: r.num || 1};
        return r.type && (d.type = r.type), 2 == r.plat && (d.token = r.token, d.key = r.key, d.uin = r.uin, d.plat = r.plat), e(), this
    }, t.exports = n
}, function (t, e, i) {
    var n = i(83), a = i(64), o = a.getFormatPrice(VIDEO_INFO.vipPrice), s = a.getFormatPrice(VIDEO_INFO.singlePrice), r = function () {
        $("body").append(n), a.showFixedWindow(".tvip_layer", 540, 299), txv.login.showMask();
        var t = $(".tvip_layer");
        t.find(".tvip_close").unbind("click").bind("click", function () {
            return t.find("a").unbind("click"), t.remove(), txv.login.hideMask(), !1
        }), t.find(".tvip_wxvod_name").html(txv.login.getWxNick()), t.find(".tvip_wxvod_film").html(COVER_INFO.title), a.getVideoDays(function (e) {
            t.find(".tvip_wxvod_time").html("观影有效期：" + e + "天内无限次观看（至" + a.getExpDate(e) + ")")
        }), $.pay_qrimg({
            id: "layer_qrcode_img",
            pay_type: 1,
            cid: COVER_INFO.id,
            usewx: 1,
            use_ws: !0,
            extendparam: "",
            pay_suc: function () {
                window.location.reload()
            },
            scan_suc: function () {
            }
        }), a.getVipInfo(function (e, i) {
            var n = e ? o : s;
            t.find(".tvv_qr_txt").html("微信扫一扫，" + n + "元购买")
        })
    };
    t.exports = r
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="tvip_layer tvip_layer_wxvod">\n    <div class="tvip_content">\n        <div class="tvip_hd">\n           <a href="javascript:;" class="tvip_close" title="关闭">关闭</a> \n        </div>\n        <div class="tvip_bd">\n            <!--用券结构-->\n            <div class="tvip_box_wxvod">\n                <div class="tvip_wxvod_tit">正在为微信帐号 <span class="tvip_wxvod_name"></span> 购买影片 《<span class="tvip_wxvod_film"></span>》</div>\n                <div class="tvip_wxvod_time">观影有效期：2天内无限次观看（至2016-05-06 20:05:55）</div>\n                <div class="tvip_wxvod_qr">\n                    <div class="tvip_qr_pic">\n                        <img id="layer_qrcode_img" class="tvip_qr_img" />\n                    </div>\n                    <div class="tvv_qr_txt">微信扫一扫，5.0元购买</div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>'
    }
}, function (t, e, i) {
    var n = i(64), a = i(85), o = (window.PageMsg, i(17)), s = function (t) {
        var e = $({});
        e.attr("data-toggle", "l_pay"), e.attr("data-amount", "3"), e.attr("_source", "10"), e.attr("_scene", "8"), e.attr("_stat", "vip_player:openVip");
        var i = e.pay("aid");
        $.ajax({
            url: "//pay.video.qq.com/fcgi-bin/ticket_trade",
            dataType: "jsonp",
            data: {
                uin: txv.login.getUin(),
                cid: COVER_INFO.id,
                pid: 10001,
                pchannel: "nomoney",
                money: 0,
                title: COVER_INFO.title,
                otype: "json",
                days: t,
                tcount: 0,
                aid: i,
                platform: 1,
                version: "film"
            },
            CSRF: !0,
            success: function (t) {
                0 == t.ret ? window.location.reload() : t.ret == -11 ? txv.login.openLogin({
                            success: function () {
                                txv.cookie.set("vip_useticket", "1"), window.location.reload()
                            }
                        }) : txv.tips.Msg({title: t.msg_title + " " + t.msg_desc})
            }
        }), o.click("vip_ticket:showLayer")
    }, r = function (t, e, i) {
        $("body").append(a), n.showFixedWindow(".tvip_layer", 540, 225), txv.login.showMask();
        var o = $(".tvip_layer");
        o.find(".tvip_close").unbind("click").bind("click", function () {
            return o.find("a").unbind("click"), o.remove(), txv.login.hideMask(), !1
        }), o.find("#ticket_left_count").html(e + " 张");
        var s = n.getExpDate(t);
        o.find("#ticket_valid_date").html(t + "天内无限次观看（至" + s + "）"), o.find("a.tvip_btn_vip").unbind("click").bind("click", function () {
            return i && i(), !1
        })
    }, c = function (t) {
        n.getVideoDays(function (e) {
            $.ajax({
                url: "//pay.video.qq.com/fcgi-bin/user_ticket",
                dataType: "jsonp",
                data: {uin: txv.login.getUin(), status: 1, psize: 30, _t: 1, otype: "json", platform: 1},
                CSRF: !0,
                success: function (i) {
                    if (i.result.code === -11)return void txv.login.openLogin({
                        success: function () {
                            txv.cookie.set("vip_useticket", "1"), window.location.reload()
                        }
                    });
                    if (0 == i.result.code) {
                        var n = i.vip_tt + i.watch_tt;
                        r(e, n, function () {
                            s(e)
                        }), t && t()
                    }
                },
                error: function () {
                    txv.tips.Msg({title: "观影券数据读取错误，请刷新重试", buttons: ["刷新"]}).done(function () {
                        window.location.reload()
                    })
                }
            })
        })
    };
    t.exports = c
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="tvip_layer">\n    <div class="tvip_content">\n        <div class="tvip_hd">\n           <a href="javascript:;" class="tvip_close" title="关闭">关闭</a> \n        </div>\n        <div class="tvip_bd">\n            <!--用券结构-->\n            <div class="tvip_box_coupon">\n                <div class="tvip_coupon_tit">用券可观看完整影片</div>\n                <div class="tvip_tickets_list">\n                    <div class="tvip_tickets_item">\n                        <span class="tvip_tickets_tit">剩余观影券：</span>\n                        <span class="tvip_tickets_txt" id="ticket_left_count">2 张</span>\n                    </div>\n                    <div class="tvip_tickets_item">\n                        <span class="tvip_tickets_tit">本次使用：</span>\n                        <span class="tvip_tickets_txt"><span class="tvip_txt_red">1</span> 张</span>\n                    </div>\n                    <div class="tvip_tickets_item">\n                        <span class="tvip_tickets_tit">观影有效期：</span>\n                        <span class="tvip_tickets_txt" id="ticket_valid_date">2天内无限次观看（至2016-05-06 20:05:55）</span>\n                    </div>\n                </div>\n                <a class="tvip_btn_vip" href="javascript:;"><span class="tvip_btn_txt">立即使用</span></a>\n                <a class="tvip_btn_link" href="javascript:;" style="display:none;"><span class="tvip_icon_vip"></span><span class="tvip_btn_txt">开通VIP会员免费</span><span class="tvip_txt_red">买4送2</span></a>\n            </div>\n        </div>\n    </div>\n</div>'
    }
}, function (t, e, i) {
    "use strict";
    var n = i(87), a = i(89), o = i(37), s = i(90), r = {
        1074: "跑男团耐撕排行榜",
        1112: "冰箱家族人气榜",
        1152: "天空城人气榜",
        1151: "青云志人气榜",
        1156: "女神人气榜"
    };
    t.exports = Reve.component("c-popular-rank", {
        data: function () {
            return {}
        }, ready: function () {
            var t = this, e = t.$el.getAttribute("data-liveid");
            n("tvp-ready", function () {
                t.renderTotalRank()
            }), $(t.$el).on("click", ".rank_vote", function () {
                var i = $(this);
                return txv.login.isStrongLogin() ? void s.init({
                        id: i.attr("data-pid"),
                        name: i.attr("data-name"),
                        pic: i.attr("data-img"),
                        num: i.attr("data-num"),
                        liveid: e
                    }, function (e, i) {
                        e ? t.renderTotalRank() : i && txv.login.openLogin()
                    }) : void txv.login.openLogin()
            })
        }, methods: {
            renderTotalRank: function (t, e) {
                var i = this, n = i.$el.getAttribute("data-liveid");
                s.getTotalRank(n).then(function (e) {
                    e.blockList = [], e.showList = [], e.black && e.black.length ? $.each(e.item, function (t, i) {
                            for (var n = 0, a = e.black.length; n < a; n++)if (i.id == e.black[n])return e.black.splice(n, 1), e.blockList.push(i), !0;
                            e.showList.push(i)
                        }) : e.showList = e.item, $(i.$el).html(o(i, a, {
                        ranks: e.showList,
                        blockRanks: e.blockList,
                        liveName: e.plugintitle || r[n] || ""
                    })), t && t()
                }, function () {
                    e && e()
                })
            }
        }
    })
}, function (t, e, i) {
    var n = window.PageMsg, a = i(88), o = {};
    $.each(a, function (t, e) {
        o[e] = $.Callbacks("unique memory"), n.on(e, function (t) {
            o[e].fire(t)
        })
    }), t.exports = function (t, e) {
        o[t].add(e)
    }
}, function (t, e) {
    t.exports = ["tvp-ready", "tvp-adStart", "tvp-adEnd", "tvp-skipad", "tvp-toggleSideBar", "tvp-timeupdate", "tvp-winfullscreen", "tvp-browserfullscreen", "tvp-brandsubscribe"]
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="mod_hd">\n    <div class="mod_title">\n        <h2 class="title"><span class="text_medium">' + liveName + '</span></h2>\n    </div>\n</div>\n<div class="mod_bd">\n    <div class="mod_popular_rank">\n        <ol class="popular_rank_list' + (ranks.length > 6 || blockRanks.length ? " mod_popular_rank_ultra" : "") + '">\n            ' + (ranks || []).map(function (t, e) {
                return '\n            <li class="item item_' + (e + 1) + '">\n                <a href="//sns.video.qq.com/tvideo/fcgi-bin/fanscircleredirect?name=' + _(t.name) + "&name_id=" + t.id + '" target="_blank" class="rank_people" _stat="popular-rank:person">\n                    ' + ((ranks.length > 6 || blockRanks.length) && e > 2 ? '\n                    <span class="rank_num_tiny">' + (e + 1) + "</span>\n                    " : '\n                    <span class="rank_avatar">\n                        <img src="' + _.imgUrl(t.pic) + '" alt="" onerror="picerr(this,\'s\');">\n                        <span class="rank_num">' + (e + 1) + "</span>\n                    </span>\n                    ") + '\n                    <span class="rank_name" title="' + _(t.name) + '">' + _(t.name) + '</span>\n                </a>\n                <a href="javascript:void(0);" class="rank_vote" data-pid="' + t.id + '" data-name="' + t.name + '" data-img="' + _.imgUrl(t.pic) + '" data-num="' + t.num + '" _stat="popular-rank:vote">\n                    <i class="iconfont icon_hot">&#xe62b;</i>\n                    <span class="icon_text">' + _.formatNum(t.num) + '</span>\n                    <span class="icon_text_alt">为TA打气</span>\n                </a>\n            </li>\n            '
            }).join("") + "\n            " + (blockRanks || []).map(function (t, e) {
                return '\n            <li class="item item_' + (ranks.length + e + 1) + ' disabled">\n                <a href="//sns.video.qq.com/tvideo/fcgi-bin/fanscircleredirect?name=' + _(t.name) + "&name_id=" + t.id + '" target="_blank" class="rank_people" _stat="popular-rank:person">\n                    <span class="rank_num_tiny">-</span>\n                    <span class="rank_name" title="' + _(t.name) + '">' + _(t.name) + '</span>\n                </a>\n                <a href="javascript:void(0);" class="rank_vote_disabled" data-pid="' + t.id + '" data-name="' + t.name + '" data-img="' + _.imgUrl(t.pic) + '" data-num="' + t.num + '" _stat="popular-rank:vote">\n                    <i class="iconfont icon_hot">&#xe62b;</i>\n                    <span class="icon_text">' + _.formatNum(t.num) + '</span>\n                    <span class="icon_text_alt">为TA打气</span>\n                </a>\n            </li>\n            '
            }).join("") + "\n        </ol>\n    </div>\n</div>"
    }
}, function (t, e, i) {
    "use strict";
    var n, a, o = i(15), s = i(91), r = i(92), c = i(93), l = i(12), d = i(17), p = "x_modal_gift_0", u = !1, _ = function (t) {
        for (var e = 0, i = n.length; e < i; e++)if (n[e].itemid == t)return n[e]
    }, f = function (t) {
        var e = $.Deferred();
        return $.ajax({
            url: "//liverank.video.qq.com/fcgi-bin/get_gift_rank",
            data: {type: 7, keytype: 6, liveid: t, otype: "json", platform: 2},
            dataType: "jsonp"
        }).done(function (t) {
            t && t.result && 0 == t.result.code ? e.resolve(t) : e.reject(t)
        }).fail(function (t) {
            e.reject(t)
        }), e
    }, v = function (t) {
        var e = $.Deferred();
        return $.ajax({
            url: "//livepay.video.qq.com/fcgi-bin/usual_get_tools?keytype=6&platform=2&otype=json",
            data: {liveid: t},
            type: "get",
            dataType: "jsonp",
            timeout: 1e4,
            CSRF: !0,
            success: function (t) {
                t && 0 == t.result.code && t.toollist ? e.resolve(t) : e.reject(t)
            }
        }).fail(function (t) {
            e.reject(t)
        }), e
    }, m = function (t, e, i) {
        var n = $.Deferred();
        return $.ajax({
            url: "//livepay.video.qq.com/fcgi-bin/usual_give_tools?keytype=6&platform=2&otype=json",
            data: {liveid: i, toolid: t, starid: e, num: 1},
            type: "get",
            dataType: "jsonp",
            timeout: 1e4,
            CSRF: !0,
            success: function (t) {
                t && 0 == t.result.code ? n.resolve(t) : n.reject(t)
            }
        }).fail(function (t) {
            n.reject(t)
        }), n
    }, h = function () {
        if (0 == $("link[href*='x_dialog_gift.css']").length) {
            var t = document.createElement("link");
            t.rel = "stylesheet", t.type = "text/css", t.href = "//vm.gtimg.cn/tencentvideo/vstyle/web/common/style/x_dialog_gift.css?max_age=86400&v=20160614", $("head")[0].appendChild(t)
        }
    }, g = function () {
        0 == $("#mask_layer").length ? $("body").append('<div id="mask_layer" class="mask_layer"></div>') : $("#mask_layer").show()
    }, y = function () {
        $("#mask_layer").hide()
    }, w = function (t) {
        o("//vm.gtimg.cn/tencentvideo/script/txv.sea.js", function () {
            t && t()
        })
    }, x = function (t) {
        w(function () {
            seajs.use("module/template", function () {
                seajs.use("module/db.prop.buy", function (e) {
                    t && t(e)
                })
            })
        })
    }, b = function (t, e) {
        h(), u = !1, t.liveid = t.liveid || 1006, x(function (i) {
            $.when(v(t.liveid), i.myProperty("1:2")).done(function (o, r) {
                n = o.toollist, a = t;
                var c = s({dialogId: p, person: t, _: {formatNum: l.formatNum, imgUrl: l.imgUrl}});
                $("body").append(c), O(), C(r), g();
                var d = $("#" + p), f = function () {
                    d.remove(), y(), n = null, a = null
                };
                d.on("click", ".x_close", function (t) {
                    t.preventDefault(), f(), e(u)
                }).on("click", ".x_btn", function (t) {
                    t.preventDefault();
                    var n = $(this);
                    if (!n.hasClass("x_disabled")) {
                        var a = n.attr("data-itemid"), o = _(a);
                        o.total_left > 0 ? I(a) : (d.hide(), i.propBuy({
                                id: a,
                                count: 1,
                                subType: 3,
                                ref: "curtype=3&curid=" + COVER_INFO.id
                            }, function (t) {
                                1 == t ? (d.show(), i.myProperty("1:2").done(function (t) {
                                        C(t)
                                    }), I(a)) : (f(), e(!1, t == -11))
                            }))
                    }
                })
            }).fail(function (t, i) {
                (t && t.ret == -11 || i && i.ret == -11) && e(!1, !0)
            })
        }), d.event("popular-rank-gift")
    }, k = function (t) {
        var e;
        if (t && t.myProperty) {
            e = {};
            for (var i = 0, n = t.myProperty.length; i < n; i++)e["property_" + t.myProperty[i].propertyType] = t.myProperty[i].propertyCount
        }
        return e
    }, O = function () {
        $("#" + p + " ._x_gift_table_body").html(c({toollist: n, _: {imgUrl: l.imgUrl}}))
    }, C = function (t) {
        $("#" + p + " .x_gift_footer").html(r({property: k(t)}))
    }, I = function (t) {
        m(t, a.id, a.liveid).then(function (e) {
            u = !0;
            for (var i = 0, o = n.length; i < o; i++)if (n[i].itemid == t) {
                n[i].total_left = e.leftnum;
                break
            }
            O();
            var s = $("#" + p), r = e.count || 1;
            a.num = +a.num + r, s.find(".x_gift_head").addClass("x_active"), s.find(".x_people_num").append('<span class="x_num_plus">+' + r + "</span>"), setTimeout(function () {
                s.find(".x_people_num .x_icon_text").text(l.formatNum(a.num))
            }, 1400), setTimeout(function () {
                s.find(".x_gift_head").removeClass("x_active"), s.find(".x_people_num .x_num_plus").remove()
            }, 2e3)
        })
    };
    t.exports = {init: b, getTotalRank: f}
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '<div class="x_modal_gift" id="' + dialogId + '">\n    <!--[if IE]><iframe src="about:blank" frameborder="0" class="x_iframe_mask"></iframe><![endif]-->\n    <div class="x_modal_bd">\n        <a href="javascript:;" class="x_close" title="关闭"><i class="x_iconfont x_icon_close">&#xE624;</i></a>\n        <div class="x_gift_head">\n            <div class="x_gift_props">\n                <div class="x_gift_props_p1"></div>\n                <div class="x_gift_props_p2"></div>\n            </div>\n            <span class="x_gift_avatar"><img src="' + _.imgUrl(person.pic) + '" alt="' + person.name + '" onerror="picerr(this,\'s\');" /></span>\n            <div class="x_people_name">' + person.name + '</div>\n            <div class="x_people_num"><i class="x_iconfont x_icon_hot">&#xe62b;</i><span class="x_icon_text">' + _.formatNum(person.num) + '</span></div>\n        </div>\n        <div class="x_gift_body">\n            <table class="x_gift_table">\n                <tbody class="_x_gift_table_body"></tbody>\n            </table>\n        </div>\n        <div class="x_gift_footer"></div>\n    </div>\n</div>'
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return '我的钱包：<i class="x_icon_diamond"></i><span class="x_icon_text">' + property.property_1 + '</span> <i class="x_icon_vcoin"></i><span class="x_icon_text">' + property.property_2 + "</span>";
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + (toollist || []).map(function (t, e) {
                return '\n<tr>\n    <td class="x_gift_pic"><img src="' + _.imgUrl(t.pic) + '" alt="' + t.title + '" onerror="picerr(this,\'s\');" /></td>\n    <td class="x_gift_unit"><span class="x_char_plus">+</span><i class="x_iconfont x_icon_hot">&#xe62b;</i><span class="x_icon_text">' + t.count + '</span></td>\n    <td class="x_gift_price">\n        ' + (0 == t.pay ? "免费" : '\n        <i class="' + (1 == t.dbpayflag ? "x_icon_diamond" : "x_icon_vcoin") + '"></i><span class="x_gift_price">' + t.dbpayprice + '</span><span class="x_price_vip">（会员价<i class="' + (1 == t.dbpayflag ? "x_icon_diamond" : "x_icon_vcoin") + '"></i><span class="x_gift_price">' + t.dbvip_payprice + "</span>）</span>\n        ") + '\n    </td>\n    <td class="x_gift_tool">\n        <a href="javascript:void(0);" _stat="popular-rank-gift:give" class="x_btn' + (0 == t.pay && 0 == t.total_left ? " x_disabled" : "") + '" data-itemid="' + t.itemid + '">' + (1 == t.pay && 0 == t.total_left ? "购买" : '赠送<span class="x_btn_badge">' + t.total_left + "</span>") + "</a>\n    </td>\n</tr>\n"
            }).join("")
    }
}, function (t, e, i) {
    var n = window.PageMsg;
    i(15);
    t.exports = Reve.component("c-playlist", {
        data: {page: 0, total: 0, left: 0, totalwidth: 0, currentwidth: 0},
        ready: function () {
            var t = this;
            n.wait("tvp-ready", this.setData.bind(this));
            var e = null;
            $(window).on("resize", function () {
                clearTimeout(e), e = setTimeout(function () {
                    t.setData()
                }, 500)
            })
        },
        methods: {
            getTotalWidth: function () {
                var t = $(this.$el).find("._list"), e = t.children().length, i = t.children().eq(0).outerWidth() + 10;
                return e * i
            }, getSliderWidth: function () {
                var t = $(this.$el).find("._playlist_slider");
                return t.outerWidth() - 50
            }, setData: function () {
                this.$data.totalwidth = this.getTotalWidth(), this.$data.currentwidth = this.getSliderWidth() + 50, this.$update()
            }, prev: function () {
                if (!this.pending && 0 != this.$data.left) {
                    this.pending = !0;
                    var t = this, e = $(this.$el).find("._playlist_slider"), i = e.outerWidth();
                    this.$data.left -= i, this.$data.left < 0 && (this.$data.left = 0), e.find("._list").animate({left: -this.$data.left}, 200, function () {
                        t.pending = !1
                    }), setTimeout(function () {
                        t.$update()
                    }, 300)
                }
            }, next: function () {
                if (!(this.pending || this.$data.left >= this.$data.totalwidth - this.$data.currentwidth)) {
                    this.pending = !0;
                    var t = this, e = $(this.$el).find("._playlist_slider"), i = e.outerWidth();
                    this.$data.left += i, this.$data.left + this.$data.currentwidth > this.$data.totalwidth && (this.$data.left = this.$data.totalwidth - this.$data.currentwidth), e.find("._list").animate({left: -this.$data.left}, 200, function () {
                        t.pending = !1
                    }), setTimeout(function () {
                        t.$update()
                    }, 300)
                }
            }
        }
    })
}, function (t, e) {
    "use strict";
    t.exports = Reve.component("c-top-list", {
        data: function () {
            return {current: "day"}
        }, methods: {
            switchs: function (t) {
                var e = jQuery(t.$currentTarget).attr("data-relate");
                this.$set({current: e})
            }
        }
    })
}, function (t, e, i) {
    i(97), i(98);
    var n = i(101), a = i(102), o = i(100), s = i(37), r = i(13), c = window.PageMsg, l = i(12), d = ["costar_id", "director_id", "guests_id", "leading_actor_id", "mv_stars_id", "presenter_id", "race_stars_id", "relative_stars_id", "singer_id", "stars", "athlete_id"], p = ["costar", "director", "guests", "leading_actor", "mv_stars", "presenter", "race_stars", "relative_stars", "singer_name", "stars_name", "athlete"], u = d.map(function (t, e) {
        return {id: t, name: p[e]}
    });
    t.exports = Reve.component("c-star-relevant", {
        data: function () {
            return {
                id: "",
                page: 1,
                starPage: 1,
                starTotalPage: 0,
                starsLength: 0,
                currentStar: 0,
                $mod: {},
                $ul: {},
                $sliderListItem: {},
                pageSize: 0,
                starStorage: {}
            }
        }, created: function () {
            try {
                this.$data.star_infos = JSON.parse(unescape(this.$data.star_infos))
            } catch (t) {
                this.$data.star_infos = []
            }
        }, ready: function () {
            this.$data.$mod = $(this.$el), this.$data.$ul = this.$data.$mod.find("._stars_list").eq(0), this.$data.$sliderListItem = this.$data.$mod.find("._relevant-slider-list").eq(0).children().eq(0), this._getStars(this.$data.star_infos), COVER_INFO && [1, 2, 9, 10].indexOf(COVER_INFO.typeid) == -1 && c.on("vidChanged", function (e) {
                e.vid && t.$data.id !== e.vid && (t.$data.id = e.vid, t._refresh(e.vid))
            });
            var t = this;
            $(window).resize(r.lock(function (e) {
                setTimeout(function () {
                    t._setStarTotalPage(t.$data.starsLength, e)
                }, 250)
            }))
        }, methods: {
            _init: function () {
                this.$data.currentStar = this.$data.star_infos[0] && this.$data.star_infos[0].id, this.$data.starPage = 1, this.$data.$ul.css("left", 0)
            }, _setStarTotalPage: function (t, e) {
                +t > -1 && this.$set("starsLength", t), this.$data.pageSize = Math.floor(this.$data.$mod.width() / this.$data.$sliderListItem.width()), this.$set("starTotalPage", Math.ceil(this.$data.starsLength / this.$data.pageSize)), "function" == typeof e && e()
            }, _getStars: function (t) {
                var e = this, i = t && t.length;
                if (!i)return void e._setStarTotalPage(i);
                var n = [], a = [];
                return t.forEach(function (t) {
                    var i = e.$data.starStorage[t.id];
                    i ? i.avatar && 0 !== i.avatar.length && n.push(i) : a.push(t.id)
                }), 0 === a.length ? void this._renderStar(n) : void o("//union.video.qq.com/fcgi-bin/data", {
                        tid: 598,
                        appid: "10001007",
                        appkey: "e075742beb866145",
                        otype: "json",
                        idlist: a.join(",")
                    }, function (i, a) {
                        return i || 0 != a.errorno ? void e._renderStar(t.map(function (t) {
                                return {id: t.id, name: t.name, avatar: "", profession: "", fansid: ""}
                            })) : (a.results.forEach(function (t) {
                                var i = t.fields.profession || "", a = {
                                    id: t.id,
                                    name: t.fields.name,
                                    avatar: t.fields.pic200x200,
                                    fansid: t.fields.fansid,
                                    profession: i.split("|")[0]
                                };
                                e.$data.starStorage[t.id] || (e.$data.starStorage[t.id] = a), t.fields.pic200x200 && 0 !== t.fields.pic200x200.length && n.push(a)
                            }), void e._renderStar(n))
                    })
            }, _renderStar: function (t) {
                this._clearAvatarChild(), this.$data.$ul.html(s(this, n, {stars: t})), this.$data.star_infos = [].concat(t), this._init(), this._setStarTotalPage(t.length)
            }, _clearAvatarChild: function () {
                this.$data.$ul.html("");
                for (var t = this.$components.length - 1; 0 != t; t--)~this.$components[t].$name.indexOf("avatar") && this.$components.splice(t, 1)
            }, _refresh: function (t) {
                if (t) {
                    var e = this;
                    this.$set("starsLength", 0), o("//union.video.qq.com/fcgi-bin/data", {
                        tid: 629,
                        appid: "10001007",
                        appkey: "e075742beb866145",
                        otype: "json",
                        idlist: t
                    }, function (i, n) {
                        if (!i && n.results && n.results[0] && t == e.$data.id) {
                            var a = n.results[0].fields, s = [];
                            if (s = e.$data.isOlympic ? l.formatPeople(a, [{
                                        id: "athlete_id",
                                        name: "athlete"
                                    }]) : l.formatPeople(a, u), s && 0 !== s.length) {
                                var c = {idlist: [], pagenum: 5, bid: e.$data.isOlympic ? 9 : 8}, d = [];
                                return s.forEach(function (t) {
                                    var i = e.$refs["star_" + t.id];
                                    i ? (t.total = i.$data.total, d.push(t)) : c.idlist.push(t.id)
                                }), c.idlist[0] ? void o("//node.video.qq.com/x/cgi/star_cgi", {idlist: c.idlist.join(",")}, function (t, i) {
                                        !t && 0 == i.cResult && i.vecListValues[0] && (i.vecListValues.forEach(function (t, e) {
                                            if (t.strListVal && 0 == t.strListVal.errorno && !(t.strListVal.total < 1)) {
                                                var i = {};
                                                s.every(function (t) {
                                                    return t.id != c.idlist[e] || (i = t, !1)
                                                }), d.push(r.extend(t.strListVal, i))
                                            }
                                        }), e._renderAfterRefresh(d))
                                    }) : void e._renderAfterRefresh(d)
                            }
                        }
                    })
                }
            }, _renderAfterRefresh: function (t) {
                if (t.sort(function (t, e) {
                        return t.total < e.total ? 1 : -1
                    }), t[0] && t[0].total < 5)return void this._setStarTotalPage(0);
                this._getStars(t), t = r.filter(t, function (t) {
                    return t.results
                });
                var e = this.$data.$mod.find("._star_cont").eq(0);
                e.append(s(this, a, {starRelevant: t}))
            }, onStarNext: function () {
                this.$data.starPage !== this.$data.starTotalPage && (this.$set("starPage", this.$data.starPage + 1), this._onStarPageChanged())
            }, onStarPre: function () {
                1 !== this.$data.starPage && (this.$set("starPage", this.$data.starPage - 1), this._onStarPageChanged())
            }, _onStarPageChanged: function () {
                this.$data.$ul.css("left", (1 - this.$data.starPage) * (this.$data.$mod.width() + 20)), this.$set("currentStar", this.$data.star_infos[(this.$data.starPage - 1) * this.$data.pageSize].id)
            }
        }
    })
}, function (t, e) {
    t.exports = Reve.component("c-star-avatar", {
        data: function () {
            return {id: "", name: "", profession: "", avatar: "", fansid: ""}
        }, methods: {
            onSwitchStar: function (t) {
                return this.$data.currentStar != t && (this.$parent.$set("currentStar", t), !0)
            }
        }
    })
}, function (t, e, i) {
    var n = i(99), a = i(37), o = i(100);
    t.exports = Reve.component("c-star-videos", {
        data: function () {
            return {starId: "", pagecontext: "", total: 0, hasStorage: !1, totalPage: 0, page: 1, $ulCont: {}}
        }, created: function () {
            this.$set("totalPage", this.$data.total < 20 ? Math.ceil(this.$data.total / 5) : 4)
        }, ready: function () {
            this.$data.$ulCont = $(this.$el).find("._star_" + this.$data.starId).eq(0)
        }, methods: {
            _getVideos: function (t, e) {
                var i = this, n = i.$data.starId, a = {
                    idlist: n,
                    pagenum: 15,
                    pagecontext: i.$data.pagecontext,
                    bid: i.$parent.$data.isOlympic ? 9 : 8
                };
                i.$parent.$data.$mod.addClass("mod_row_loading"), o("//node.video.qq.com/x/cgi/star_cgi", a, function (a, o) {
                    if (i.$parent.$data.$mod.removeClass("mod_row_loading"), a || 0 != o.cResult || !o.vecListValues[0] || 0 != o.vecListValues[0].strListVal.errorno)return void("function" == typeof e && e());
                    var s = o.vecListValues[0].strListVal;
                    i._renderAsync(n, s), "function" == typeof t && t()
                })
            }, _renderAsync: function (t, e) {
                e.id = t;
                var i = a(this, n, e);
                this.$data.$ulCont.append(i)
            }, onNext: function () {
                if (!this.pending && this.$data.page != this.$data.totalPage) {
                    this.pending = !0;
                    var t = this, e = this.$data.$ulCont.parent(), i = e.width() + 20;
                    this.$set("page", this.$data.page + 1), this.$data.hasStorage ? this.$data.$ulCont.animate({left: (1 - this.$data.page) * i}, 200, function () {
                            t.pending = !1
                        }) : (e.addClass("none"), this._getVideos(function (n) {
                            t.pending = !1, t.$set("hasStorage", !0), e.removeClass("none"), t.$data.$ulCont.css({left: (1 - t.$data.page) * i})
                        }, function (i) {
                            t.pending = !1, t.$set("totalPage", 1), e.removeClass("none")
                        }))
                }
            }, onPre: function () {
                if (!this.pending && 1 != this.$data.page) {
                    this.pending = !0;
                    var t = this, e = this.$data.$ulCont.parent().width() + 20;
                    t.$set("page", t.$data.page - 1), this.$data.$ulCont.animate({left: (1 - t.$data.page) * e}, 200, function () {
                        t.pending = !1
                    })
                }
            }
        }
    })
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + (results || []).map(function (t, e) {
                return '\n<li class="list_item">\n    <a href="' + t.fields.url + '" class="figure" tabindex="-1" target="_blank" _stat="star-relevant:clickVideo">\n        <img alt="' + t.fields.title + '" r-lazyload="' + _.imgUrl(t.fields.pic_228_128) + '" onerror="picerr(this, \'h\')">\n        <div class="figure_caption">\n            <span class="figure_info">' + _.formatDate(t.fields.video_checkup_time) + '</span>\n        </div>\n    </a>\n    <strong class="figure_title figure_title_two_row"><a _stat="star-relevant:clickVideo" href="' + t.fields.url + '" title="' + t.fields.title + '" target="_blank">' + t.fields.title + '</a></strong>\n    <div class="figure_count">\n        <i class="iconfont icon_play_small"></i><span class="num">' + _.formatNum(t.fields.view_all_count) + "</span>\n    </div>\n</li>\n"
            }).join("") + "\n"
    }
}, function (t, e) {
    function i() {
    }

    t.exports = function (t, e, n) {
        return "function" == typeof e && (n = e, e = {}), n = n || i, $.ajax({
            url: t,
            dataType: "jsonp",
            data: e,
            CSRF: !0,
            success: function (t) {
                n(null, t)
            },
            error: function (t, e) {
                n(e || "error")
            }
        })
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + (stars || []).map(function (t, e) {
                return '\n<li class="item" r-component="c-star-avatar" \n    r-props="{\n        id: ' + t.id + "; \n        name: '" + (t.name || "") + "';\n        profession: '" + (t.profession || "") + "';\n        avatar: '" + _.imgUrl(t.avatar || "") + "';\n        fansid: '" + (t.fansid || "") + '\';\n    }"\n    r-data="{currentStar: currentStar}"\n    r-attr="{title: name; id: \'_star_\'+id}"\n    r-class="{ current: currentStar == id; item_tuan: fansid.length }"\n    r-on="{mouseenter: onSwitchStar.bind(this, id)}">\n    <span class="img"><img class="_img" r-attr="{src: avatar}" onerror="picerr(this, \'a\')"></span>\n    <div class="hd">\n        <span class="name"><span r-text>{name || \'\'}</span></span>\n        <a class="btn_join" target="_blank" title="进入饭团" r-attr="{href: \'http://v.qq.com/bar/\'+fansid}" r-show="{fansid.length}"><i class="icon_sm icon_fantuan_sm"><svg class="svg_icon svg_icon_fantuan_sm" viewBox="0 0 16 16"><circle cx="8" cy="8" r="7" class="svg_path_1"></circle><path d="M8.01 3.725c2.762 0 5.001 3.179 5.001 5.582 0 2.402-2.239 2.333-5.001 2.333-2.762 0-5.001.069-5.001-2.333 0-2.403 2.239-5.582 5.001-5.582z" class="svg_path_2"></path><path d="M8.5 7.688a.5.5 0 0 1-.5-.5V6.187a.5.5 0 0 1 1 0v1.001a.5.5 0 0 1-.5.5zm-2 0a.5.5 0 0 1-.5-.5V6.187a.5.5 0 0 1 1 0v1.001a.5.5 0 0 1-.5.5z" class="svg_path_3"></path></svg></i></a>\n    </div>\n    <span class="txt"><span r-text>{profession || \'\'}</span></span>\n</li>\n'
            }).join("") + "\n"
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + (starRelevant || []).map(function (star, index) {
                return '\n<div class="figures_scroll figures_scroll_h_default" r-component="c-star-videos" r-ref="star_' + star.id + '"\n    r-props="{\n        starId: ' + star.id + ";\n        pagecontext: '" + star.pagecontext + "';\n        total: " + star.total + ';\n    }"\n    r-data="{currentStar: currentStar}"\n    r-class="{none: starId != currentStar}">\n    <div class="panel-body mod_figures mod_figure_h mod_figure_h_default _relevant-slider">\n        <ul class="figures_list _relevant-slider-list _star_' + star.id + '">\n        ' + function ($value) {
                        with ($value)return "" + (results || []).map(function (t, e) {
                                return '\n<li class="list_item">\n    <a href="' + t.fields.url + '" class="figure" tabindex="-1" target="_blank" _stat="star-relevant:clickVideo">\n        <img alt="' + t.fields.title + '" r-lazyload="' + _.imgUrl(t.fields.pic_228_128) + '" onerror="picerr(this, \'h\')">\n        <div class="figure_caption">\n            <span class="figure_info">' + _.formatDate(t.fields.video_checkup_time) + '</span>\n        </div>\n    </a>\n    <strong class="figure_title figure_title_two_row"><a _stat="star-relevant:clickVideo" href="' + t.fields.url + '" title="' + t.fields.title + '" target="_blank">' + t.fields.title + '</a></strong>\n    <div class="figure_count">\n        <i class="iconfont icon_play_small"></i><span class="num">' + _.formatNum(t.fields.view_all_count) + "</span>\n    </div>\n</li>\n"
                            }).join("") + "\n"
                    }(star) + '\n        </ul>\n    </div>\n    <a href="javascript:void(0);" \n        class="btn_prev" \n        title="上一页"\n        r-on="{click: onPre}" \n        r-show="{page > 1}"\n        _stat="star-relevant:prevpage"\n    >\n        <span class="btn_inner"><i class="iconfont arrow_left_large"></i></span>\n    </a>\n    <a href="javascript:void(0);" \n        class="btn_next"\n        r-on="{click: onNext}"\n        r-show="{page < totalPage}"\n        _stat="star-relevant:nextpage "\n    >\n        <span class="btn_inner" title="下一页"><i class="iconfont arrow_right_large"></i></span>\n    </a>\n</div>\n'
            }).join("") + "  "
    }
}, function (t, e, i) {
    function n() {
        var t, e = 0;
        try {
            e = txv.login.getUnicode()
        } catch (i) {
        }
        return 0 == e ? (window.localStorage ? (t = window.localStorage.getItem("vplay_no_login_code"), t || (t = Math.random().toString(16).substring(2), window.localStorage.setItem("vplay_no_login_code", t))) : t = Math.random().toString(16).substring(2), t) : ""
    }

    var a = i(104), o = i(37), s = i(100), r = (i(105), i(13)), c = i(106)("recommends");
    t.exports = Reve.component("c-cover-recommend", {
        data: function () {
            return {
                total_page: 4,
                page_index: 0,
                page_data: {},
                firstTime: !0,
                jsonpCount: 0,
                cgiArgs: {cid: "", rec_num: 10, pageContext: "", no_login_id: ""}
            }
        }, ready: function () {
            this.$data.cgiArgs.cid = COVER_INFO.id;
            var t = this;
            window.PageMsg && window.PageMsg.on("loadRecommends", function (e, i) {
                var n = c.get();
                return n ? void i(n) : void t.refresh(i)
            }), window.PageMsg && window.PageMsg.wait("loadRecommends", function (e, i) {
                var n = c.get();
                return n ? void i(n) : void t.refresh(i)
            })
        }, methods: {
            refresh: r.lock(function (t, e) {
                var i = this, a = i.$data.page_data["p_" + i.$data.page_index];
                return "lazyload" === e && i.$data.page_data.p_0 ? void t() : a ? (i._renderAsync(a, e), void i._setNextPidx(t)) : (this.$data.cgiArgs.no_login_id = n(), void s("//node.video.qq.com/x/vlikecgi/related_rec", this.$data.cgiArgs, function (n, a) {
                            if (n)return i.$data.jsonpCount++, void(i.$data.jsonpCount < 3 ? (t(), i.$methods.refresh()) : i._hide());
                            i.$data.jsonpCount = 0;
                            var o = a && a.data && a.data.recItemList;
                            if (!o || !o[0])return void i._hide();
                            i.$data.cgiArgs.pageContext = encodeURI(a.data.pageContext), i.$data.firstTime = !1;
                            for (var s = {
                                cid: i.$data.cgiArgs.cid,
                                seqNum: a.data.seqNum,
                                group: {}
                            }, r = 0; r < o.length; r++) {
                                var c = "g_" + parseInt(r / 5);
                                s.group[c] || (s.group[c] = []), s.group[c].push(o[r])
                            }
                            i._renderAsync(s, e), i.$data.page_data["p_" + i.$data.page_index] = s, i._setNextPidx(t), txv.Message.emit("report_recomm_refresh", i.$el)
                        }))
            }), _renderAsync: function (t, e) {
                var i = this, n = $(this.$el), s = n.find("._recommend-list"), l = o(i, a, {coverRecommends: t});
                n.removeClass("mod_row_loading"), s.html("").append(l);
                var d = r.map(t.group.g_0, function (t) {
                    return t.itemId + "|" + t.unionInfo.title + "|" + t.unionInfo.horizontal_pic_url + "|" + t.unionInfo.horizontal_pic_url.replace(".jpg", "_big.jpg")
                });
                c.set(d), e && "function" == typeof e && e(d)
            }, _setNextPidx: function (t) {
                t(), this.$data.page_index >= this.$data.total_page ? this.$data.page_index = 0 : this.$data.page_index++
            }, _hide: function () {
                this.$data.firstTime && $(this.$el).hide()
            }
        }
    })
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + Object.keys(coverRecommends.group).map(function (t, e) {
                var i = coverRecommends.group[t];
                return '\n<ul class="figures_list">\n    ' + (i || []).map(function (t, e) {
                        return '\n    <li class="list_item" data-cid="' + t.itemId + '" \n    _recommend="pt=vplay&m=coverRecommend&s=' + coverRecommends.seqNum + "&r=" + t.itemType + "&a=" + t.recReportInfo.algId + "&b=" + t.recReportInfo.bucketId + "&rs=" + t.recReportInfo.reason + "&rt=" + t.recReportInfo.reasonType + "&c=" + t.unionInfo.cover_id + '">\n        <a href="' + _.playUrl(t.itemId) + '" class="figure" tabindex="-1" target="_blank" _stat="cover-recommend:click">\n            <img src="//i.gtimg.cn/qqlive/images/20150608/pic_v.png" r-lazyload="' + _.coverPic(t.unionInfo.cover_id, "", "y") + '" alt="' + t.unionInfo.title + '" onerror="picerr(this,\'v\')">\n            ' + _.coverCorner(t.unionInfo.web20_imgtag, [1, 2, 3]) + '\n            <span class="figure_collect" r-component="c-follow" r-attr="{\n        title: isFollow ? followed : follow;\n    }" r-on="{click: onToggle}" r-class="{\n        figure_collected: isFollow\n    }" r-props="{\n                id: \'' + t.itemId + "';\n                type: '" + t.itemType + '\'; \n               }" r-notemplate="true"><i class="iconfont icon_collect">&#xe603;</i><i class="iconfont icon_collected">&#xe601;</i></span>\n\n        </a>\n        <strong class="figure_title"><a href="' + _.playUrl(t.itemId) + '" title="' + t.unionInfo.title + '">' + t.unionInfo.title + '</a></strong>\n        <div class="figure_desc" title="' + t.unionInfo.second_title + '" r-show="{' + (null != t.unionInfo.second_title) + '}">' + t.unionInfo.second_title + '</div>\n        <div class="figure_count">\n            <i class="iconfont icon_play_small"></i><span class="num">' + _.formatNum(t.unionInfo.view_all_count) + "</span>\n        </div>\n    </li>\n    "
                    }).join("") + "\n</ul>\n"
            }).join("") + "\n"
    }
}, function (t, e, i) {
    "use strict";
    var n = i(13), a = {
        queryParse: function (t, e) {
            if (!t)return {};
            e = e || "&";
            var i = t.replace(/^\?/, ""), a = {}, o = i ? i.split(e) : null;
            return o && o.length > 0 && n.forEach(o, function (t) {
                t = t.split("=");
                var e = t.splice(0, 1), i = t.join("=");
                a[e] = i
            }), a
        }, queryJoin: function (t, e) {
            var i = a.queryStringify(e);
            if (!i)return t;
            var n;
            return n = /[\?&]$/.test(t) ? "" : ~t.indexOf("?") ? "&" : "?", t + n + i
        }, queryStringify: function (t, e) {
            return t ? n.map(n.keys(t), function (e) {
                    return e + "=" + encodeURIComponent(t[e])
                }).join(e || "&") : ""
        }
    };
    t.exports = a
}, function (t, e) {
    "use strict";
    function i() {
        this.msg = new n, this._value = null
    }

    var n = window.PageMsg;
    i.prototype.get = function () {
        return this._value
    }, i.prototype.set = function (t) {
        return this._value = t, this.msg.emit("change", t), this
    }, i.prototype.watch = function (t) {
        return this.msg.on("change", t)
    };
    var a = {};
    t.exports = window.PageStore = function (t) {
        return a[t] || (a[t] = new i), a[t]
    }
}, function (t, e, i) {
    var n = i(108), a = i(37), o = i(100), s = (i(105), i(13)), r = !0, c = 0, l = {
        tablist: 1013,
        playright: 2,
        appver: "5.0.0",
        size: 30,
        pidx: 0,
        msgtype: 160,
        doauth: 1,
        cid: COVER_INFO.id,
        otype: "json"
    };
    t.exports = Reve.component("c-personal-recommend", {
        data: {
            who: "个人影院",
            page_index: 0,
            total_page: 5,
            page_data: {__0: null}
        }, ready: function () {
            var t = this;
            txv.login.addReadyCallback(function () {
                $(t.$el).find("._theater_name").text((txv.login.getNick() || "我") + "的影院"), txv.login.addLoginCallback(function () {
                    $(t.$el).find("._theater_name").text((txv.login.getNick() || "我") + "的影院")
                })
            })
        }, methods: {
            onNext: s.lock(function (t) {
                var e = this, i = e.$data.page_data["_" + txv.login.getUin() + "_" + e.$data.page_index];
                return i ? (e._renderAsync(i), e.reportShow(i), void e._setNextPidx(t)) : void o("//like.video.qq.com/fcgi-bin/like", l, function (i, n) {
                        if (i)return c++, void(c < 3 ? (t(), e.$methods.onNext()) : e._hide());
                        c = 0, l.pidx = l.pidx ? parseInt(l.pidx) + 1 : 1;
                        var a = n.tablist && n.tablist[0];
                        if (!a || !a.cover_info)return void e._hide();
                        a.cover_info.sort(function (t, e) {
                            return Math.random() > .5
                        });
                        var o = "_" + txv.login.getUin() + "_";
                        $.each([0, 1, 2, 3, 4, 5], function (t) {
                            e.$data.page_data[o + t] = {cover_info: a.cover_info.splice(0, 5), tab_id: a.tab_id}
                        }), r && (r = !1);
                        var s = e.$data.page_data[o + 0];
                        e.reportShow(s), e._renderAsync(s), e._setNextPidx(t)
                    })
            }), _renderAsync: function (t) {
                var e = this, i = $(this.$el), o = i.find("._list"), s = a(e, n, t);
                i.removeClass("mod_row_loading"), o.html("").append(s)
            }, _setNextPidx: function (t) {
                t(), this.$data.page_index >= this.$data.total_page ? this.$data.page_index = 0 : this.$data.page_index++, l.pidx = this.$data.page_index
            }, _hide: function () {
                r && $(this.$el).hide()
            }, reportShow: function (t) {
                var e = [];
                $.each(t.cover_info, function (t, i) {
                    e.push(i.alginfo)
                });
                var i = "//btrace.video.qq.com/kvcollect?BossId=2745&Pwd=0&iplat=0&ptype=1&rtype=2&page=0&", n = {
                    oper: 1,
                    vid: COVER_INFO.id,
                    int1: 1,
                    rlist: e.join("+"),
                    tab: t.tab_id
                };
                n.host = location.host, n.url = location.href, n.uin = txv.login.getUin();
                var a = $.param(n), o = [i, a, "&_dc=", Math.ceil(1e3 * Math.random())].join("");
                txv.report(o)
            }, reportClick: function (t, e, i) {
                var n = "//btrace.video.qq.com/kvcollect?BossId=2745&Pwd=0&iplat=0&ptype=1&rtype=2&page=0&", a = {
                    oper: 2,
                    vid: COVER_INFO.id,
                    int1: 1,
                    rlist: e,
                    tab: i
                };
                a.host = location.host, a.url = location.href, a.uin = txv.login.getUin();
                var o = $.param(a), s = [n, o, "&_dc=", Math.ceil(1e3 * Math.random())].join("");
                txv.report(s)
            }
        }
    })
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + (cover_info || []).map(function (t, e) {
                return '\n<li class="list_item">\n    <a href="' + t.playurl + '" class="figure" tabindex="-1" target="_blank" _stat="personal-recommend:click"\n       r-on="{click:reportClick.bind(null,\'' + t.id + "','" + t.alginfo + "','" + tab_id + '\')}">\n        <img r-lazyload="' + _.imgUrl(t.picurl) + '"  alt="' + t.title + '">\n        ' + _.coverCorner(t.tag_flag, [1, 2, 3]) + '\n        <span class="figure_collect" r-component="c-follow" r-attr="{\n        title: isFollow ? followed : follow;\n    }" r-on="{click: onToggle}" r-class="{\n        figure_collected: isFollow\n    }" r-props="{\n            id: \'' + t.id + '\';\n            type: \'2\';\n            }" r-notemplate="true"><i class="iconfont icon_collect">&#xe603;</i><i class="iconfont icon_collected">&#xe601;</i></span>\n\n    </a>\n    <strong class="figure_title">\n        <a href="' + t.playurl + '" title="' + t.title + '"  target="_blank" _stat="personal-recommend:click"\n            r-on="{click:reportClick.bind(null,\'' + t.id + "','" + t.alginfo + "','" + tab_id + "')}\"\n            >" + t.title + '</a></strong>\n    <div class="figure_desc figure_desc_auto">\n        ' + t.reason.replace(/《(.+)》/, '<span class="hl">《$1》</span>') + '\n    </div>\n    <div class="figure_count">\n        <i class="icon_sm icon_play_sm"><svg class="svg_icon svg_icon_play_sm" viewBox="0 0 16 16"><path d="M10.83 8.309l-.001.023-4.079 2.539-.005.003-.048.03-.013-.005c-.072.051-.149.1-.245.1-.217 0-.376-.165-.412-.369l-.028-.011V5.461l.009-.005c0-.009-.009-.014-.009-.022 0-.24.197-.435.44-.435.096 0 .174.049.246.101l.032-.017 4.129 2.569v.016a.42.42 0 0 1 .153.318.414.414 0 0 1-.169.323zm3.493 2.605a.986.986 0 0 1-.948.742 1 1 0 0 1-1-1 .98.98 0 0 1 .094-.412l-.019-.01c.34-.675.549-1.427.549-2.235a5 5 0 1 0-5 5c.767 0 1.484-.186 2.133-.494l.014.03a.968.968 0 0 1 .416-.098 1 1 0 0 1 1 1 .986.986 0 0 1-.77.954 6.897 6.897 0 0 1-2.793.608 7 7 0 1 1 7-7c0 1.048-.26 2.025-.676 2.915z"></path></svg></i>\n        <span class="num">' + _.formatNum(t.view_count) + "</span>\n    </div>\n</li>\n"
            }).join("") + "\n"
    }
}, function (t, e) {
    t.exports = Reve.component("c-tools", {
        ready: function () {
            $(this.$el).find("._recommends-slider"), setTimeout(function () {
                var t = null;
                $(window).scroll(function () {
                    clearTimeout(t), t = setTimeout(this.handleBacktop, 300)
                }.bind(this)), $("#btn_backtop").on("click", function () {
                    $(window).scrollTop(0)
                })
            }.bind(this), 300)
        }, methods: {
            handleBacktop: function () {
                var t = $(".container_player"), e = t.offset().top + t.height(), i = $(window).scrollTop();
                $("#btn_backtop")[i > e ? "show" : "hide"]()
            }
        }
    })
}, function (t, e) {
    t.exports = Reve.component("c-vip-hot", {
        ready: function () {
        }, methods: {}
    })
}, function (t, e) {
    t.exports = Reve.component("c-vip-coming", {
        ready: function () {
        }, methods: {}
    })
}, function (t, e) {
    t.exports = Reve.component("c-ad-bottom", {
        data: function () {
            return {ismac: !1}
        }, ready: function () {
            if (this.$set("ismac", txv.ua.macs), txv.clipboard) {
                var t = $(this.$el).find(".mod_ad_square a[data-id]");
                t.each(function () {
                    var t = $(this), e = t.attr("href");
                    txv.clipboard.to({
                        el: t.find("img").get(0), text: "qqlivechannel=channel1.vad", click: function () {
                            location.href = e
                        }
                    })
                })
            }
        }, methods: {}
    })
}, function (t, e, i) {
    "use strict";
    i(114);
    var n = i(87), a = window.PageMsg, o = i(117);
    t.exports = Reve.component("c-relation-item", {
        data: function () {
            return {goodsIds: []}
        }, ready: function () {
            var t = this;
            $(this.$el).on("click", ".goods_pic, .goods_name", function () {
                var t = $(this), e = t.parents(".goods_item").attr("data-gid");
                a.emit("relation-item-pop:show", {goodsId: e})
            }).on("click", ".goods_cart", function () {
                var t = $(this), e = t.parents(".goods_item"), i = e.attr("data-gid");
                1 != GOODS_INFO[i].isInCartFlag && a.emit("relation-item:add-cart", {goodsId: i})
            }), n("tvp-ready", function () {
                $(t.$el).find("[data-gid]").each(function () {
                    t.$data.goodsIds.push($(this).attr("data-gid"))
                }), t.$data.goodsIds.length > 0 && t.checkCart()
            }), a.on("relation-item:add-cart-return", function (e) {
                t.updateCartStatus(e.goodsId, e.isSuccess, !0), window.PLAYER && window.PLAYER.callPlayerExtendMethod("jdbuySetAddShoppingStatus", {
                    goodsId: e.goodsId,
                    status: e.isSuccess
                }), e.isSuccess || !e.retData || e.retData.ret != -11 && 1009 != e.retData.ret && 1010 != e.retData.ret && 1011 != e.retData.ret || txv.login.openLogin()
            }), a.on("relation-item:add-cart", function (t) {
                return txv.login.isLogin() ? void(GOODS_INFO[t.goodsId] && 1 != GOODS_INFO[t.goodsId].isInCartFlag && !GOODS_INFO[t.goodsId]._isAdding && (GOODS_INFO[t.goodsId]._isAdding = !0, o.addCart(t.goodsId, COVER_INFO.id).then(function (e) {
                        a.emit("relation-item:add-cart-return", {goodsId: t.goodsId, isSuccess: !0, retData: e})
                    }, function (e) {
                        a.emit("relation-item:add-cart-return", {goodsId: t.goodsId, isSuccess: !1, retData: e})
                    }).always(function () {
                        GOODS_INFO[t.goodsId]._isAdding = !1
                    }))) : void txv.login.openLogin()
            }), a.on("relation-item:show", function (e) {
                a.emit("switchSideTo", 14), $(t.$el).find(".mod_relation_goods").addClass("goods_focus").find('[data-gid="' + e.goodsId + '"]').addClass("current").siblings().removeClass("current"), setTimeout(function () {
                    $(t.$el).find(".mod_relation_goods").removeClass("goods_focus").find("[data-gid]").removeClass("current")
                }, 3e3), setTimeout(function () {
                    var i = $(t.$el).find('[data-gid="' + e.goodsId + '"]'), n = $(t.$el).find(".scroll_wrap");
                    n.scrollTop(n.scrollTop() + i.offset().top - i.outerHeight() + $(t.$el).find(".scroll_fixed ").outerHeight())
                }, 16), e.fromPlayer && window.PLAYER && window.PLAYER.callPlayerExtendMethod("jdbuySetAddShoppingStatus", {
                    goodsId: e.goodsId,
                    status: 1 == GOODS_INFO[e.goodsId].isInCartFlag
                })
            }), txv.login.addLoginCallback(function () {
                t.$data.goodsIds.length > 0 && t.checkCart()
            }), txv.login.addLogoutCallback(function () {
                for (var e = 0, i = t.$data.goodsIds.length; e < i; e++) {
                    var n = t.$data.goodsIds[e];
                    t.updateCartStatus(n, !1)
                }
                $(t.$el).find(".link_cart").find(".cart_num").text("")
            })
        }, methods: {
            addCartAnimation: function (t) {
                var e = t[0], i = $(this.$el).find(".link_cart"), n = "BackCompat" == document.compatMode ? document.body : document.documentElement, a = e.getBoundingClientRect().left + n.scrollLeft, o = e.getBoundingClientRect().top + n.scrollTop, s = i[0].getBoundingClientRect().left + n.scrollLeft, r = i[0].getBoundingClientRect().top + n.scrollTop, c = '<i class="icon_sm icon_shopcart_sm animation_cart"><svg class="svg_icon" viewBox="0 0 16 16"><use xlink:href="#svg_icon_shopcart_sm"></use></svg></i>', l = $(c);
                l.appendTo("body").css({
                    position: "absolute",
                    color: "#FF920B",
                    "z-index": "5",
                    top: o - 20,
                    left: a + 5,
                    transition: "all 0.8s ease"
                }), setTimeout(function () {
                    l.css({left: s, top: r})
                }, 10), setTimeout(function () {
                    var t = i.find(".cart_num").text() ? i.find(".cart_num").text() : 0;
                    i.find(".cart_num").text(+t + 1), l.remove()
                }, 820)
            }, updateCartStatus: function (t, e, i) {
                var n = $(this.$el).find('[data-gid="' + t + '"]').find(".goods_cart");
                e ? (GOODS_INFO[t].isInCartFlag = 1, n.addClass("added").attr("title", "已添加到购物车"), i && this.addCartAnimation(n)) : (GOODS_INFO[t].isInCartFlag = 0, n.removeClass("added").attr("title", "添加到购物车"))
            }, checkCart: function () {
                var t = this;
                o.checkCart(t.$data.goodsIds.join(",")).then(function (e) {
                    for (var i = 0, n = 0, a = t.$data.goodsIds.length; n < a; n++) {
                        var o = t.$data.goodsIds[n];
                        1 == e.data[o].iIsInCartFlag ? (i++, t.updateCartStatus(o, !0)) : t.updateCartStatus(o, !1)
                    }
                    $(t.$el).find(".link_cart").find(".cart_num").text(i || "")
                })
            }
        }
    })
}, function (t, e, i) {
    "use strict";
    var n = window.PageMsg, a = i(37), o = i(115), s = i(116), r = i(17);
    t.exports = Reve.component("c-relation-item-pop", {
        data: function () {
            return {display: !1, length: 0, goodsId: "", name: "", price: 0, mprice: 0, clickUrl: "", added: !1}
        }, ready: function () {
            var t = this;
            $(this.$el).on("click", ".pop_preview_prev,.pop_preview_next", function () {
                var e = $(this);
                if (!e.hasClass("disabled")) {
                    var i = +$(t.$el).find(".pop_relation_preview_inner").attr("data-index");
                    i = e.hasClass("pop_preview_prev") ? i - 1 <= 0 ? 0 : i - 1 : i + 1 >= t.$data.length - 1 ? t.$data.length - 1 : i + 1, t.selectImg(i)
                }
            }).on("click", ".pic_item", function () {
                var e = $(this);
                t.selectImg(e.index())
            }).appendTo("body"), n.on("relation-item-pop:show", function (e) {
                if (e && e.goodsId && GOODS_INFO[e.goodsId]) {
                    t.$data.goodsId = e.goodsId;
                    var i = GOODS_INFO[e.goodsId];
                    i.image_list100 && i.image_list800 && i.image_list100.length == i.image_list800.length && (t.updateGoodsInfo(i), t.selectImg(0), n.emit("tvp-pause"), r.event("relation-item-pop"))
                }
            }), n.on("relation-item:add-cart-return", function (e) {
                t.$data.display && t.$data.goodsId == e.goodsId && e.isSuccess && t.$set({added: !0})
            })
        }, methods: {
            hide: function () {
                this.$set({display: !1}), n.emit("tvp-play")
            }, selectImg: function (t) {
                var e = $(this.$el), i = e.find(".pic_item").eq(t);
                e.find(".pop_relation_preview_inner").attr("data-index", t).find(".pop_preview_item").eq(t).removeClass("none").siblings().addClass("none"), i.addClass("current").siblings().removeClass("current"), e.find(".pop_preview_prev")[0 == t ? "addClass" : "removeClass"]("disabled"), e.find(".pop_preview_next")[t == this.$data.length - 1 ? "addClass" : "removeClass"]("disabled")
            }, updateGoodsInfo: function (t) {
                var e = a(this, o, {sPic: t.image_list100});
                $(this.$el).find(".pop_goods_pics").html(e);
                var i = a(this, s, {bPic: t.image_list800});
                $(this.$el).find(".pop_relation_preview_inner").html(i), this.$set({
                    display: !0,
                    length: t.image_list100.length,
                    name: t.title,
                    price: t.price,
                    mprice: t.mprice,
                    clickUrl: t.clickurl,
                    added: 1 == t.isInCartFlag
                })
            }, addCart: function () {
                this.$data.added || n.emit("relation-item:add-cart", {goodsId: this.$data.goodsId})
            }
        }
    })
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + (sPic || []).map(function (t, e) {
                return '\n<div class="pic_item" _stat="relation-item-pop:pic">\n    <img src="' + t + '" alt="" onerror="picerr(this,\'s\');" />\n</div>\n'
            }).join("")
    }
}, function (module, exports) {
    module.exports = function (d) {
        with (d)return "" + (bPic || []).map(function (t, e) {
                return '\n<div class="pop_preview_item none">\n    <img src="' + t + '" alt="" onerror="picerr(this,\'s\');" />\n</div>\n'
            }).join("")
    }
}, function (t, e) {
    "use strict";
    var i = function (t, e) {
        var i = $.Deferred();
        return $.ajax({
            url: "//node.video.qq.com/x/api/video_cart_add",
            data: {id: t, cid: e},
            dataType: "jsonp"
        }).done(function (t) {
            t && 0 == t.ret ? i.resolve(t) : i.reject(t)
        }).fail(function (t) {
            i.reject(t)
        }), i
    }, n = function (t) {
        var e = $.Deferred();
        return $.ajax({
            url: "//node.video.qq.com/x/api/video_cart_check",
            data: {id: t},
            dataType: "jsonp"
        }).done(function (t) {
            t && 0 == t.ret ? e.resolve(t) : e.reject(t)
        }).fail(function (t) {
            e.reject(t)
        }), e
    };
    t.exports = {addCart: i, checkCart: n}
}, function (t, e) {
    t.exports = Reve.component("c-iwan-game", {
        ready: function () {
        }, methods: {
            show: function () {
                $(this.$el).html('<iframe src="//v.qq.com/games/videogame.htm" style="width: 340px; height: 360px; margin: 0px auto; overflow: hidden;"  frameborder="0" scrolling="no"></iframe>')
            }
        }
    })
}, function (t, e, i) {
    function n(t, e, i) {
        var n = t[e];
        return t[e] = function () {
            i.apply(this, arguments), n && n.apply(this, arguments);
        }
    }

    function a() {
        if (!m) {
            m = !0;
            var t = document.createElement("script");
            t.setAttribute("id", "l_qq_com"), t.setAttribute("arguments", "{'mo_page_ratio':0.02,'mo_ping_ratio':0.01,'mo_ping_script':'//ra.gtimg.com/sc/mo_ping-min.js'}"), t.src = "//ra.gtimg.com/sc/vqq/crystal-min.js", t.async = !0, t.onload = t.onreadystatechange = function (e, i) {
                (i || !t.readyState || /loaded|complete/.test(t.readyState)) && crystal.request()
            }, document.body.appendChild(t)
        }
    }

    var o = i(120)(location.protocol.slice(0, -1) + "_v.qq.com"), s = window.performance && performance.timing && performance.timing.connectStart, r = window.performance && performance.timing && performance.timing.responseEnd;
    o.start4(s).end4(window.ITIL4 || r).start5(s), window.PageMsg.wait("tvp-ready", function () {
        o.end5()
    });
    var c = i(17), l = i(37), d = i(13), p = i(87);
    Reve.directive("lazyload", i(121)), Reve.directive("lazycall", i(123)), Reve.directive("subscribe", i(124));
    var u = i(126);
    Reve.component("c-follow", u.component()), Reve.directive("follow", u.directive(Reve)), Reve.directive("expose", i(133)), Reve.set("catch", !0), l.helpers(i(12));
    var _ = (i(15), window.$Root = {pages: {}}), f = _.pages, v = window.COVER_INFO ? window.COVER_INFO.typeid : 0;
    v = v || (window.VIDEO_INFO ? window.VIDEO_INFO.type : 0), t.exports = function (t, e) {
        return c.setPage(v).bind(document.body, "_stat"), n(e, "created", function () {
            f[t] = this
        }), n(e, "ready", function () {
            c.pv(v), setTimeout(function () {
                c.stat("stay_5s")
            }, 5e3), setTimeout(function () {
                c.stat("stay_10s")
            }, 1e4), p("tvp-ready", function () {
                setTimeout(function () {
                    c.flush()
                }, 10)
            })
        }), n(e, "destroy", function () {
            f[t] = null
        }), Reve.component("p-" + t, e)
    }, _.getComponentById = function (t) {
        var e = null;
        return d.objEach(f, function (i, n) {
            e || d.some(n.$components, function (i) {
                if (i.$id == t)return e = i, !0
            })
        }), e
    }, PageMsg.wait("tvp-adStart", a), PageMsg.wait("tvp-playing", a);
    var m = !1
}, function (t, e, i) {
    "use strict";
    function n(t) {
        return Math.round(Math.random() * (1 / t)) % 20
    }

    function a(t) {
        var e = !1;
        return function () {
            e || (e = t.apply(this, arguments))
        }
    }

    var o = window.performance, s = i(22), r = (location.search || location.href).match("_qosstat=1"), c = {};
    t.exports = function (t) {
        if (!c[t]) {
            var e = !1, i = !1, l = !1, d = {};
            d.t = new Array(5);
            var p = a(function () {
                if (e && l && i) {
                    var a = n(.05);
                    return 10 !== a && !r || (s("http://qos.report.qq.com/collect?type=1&name=" + t + "&" + d.t.map(function (t, e) {
                                return e + 1 + "=" + t
                            }).join("&") + "&_rt=" + +new Date), !0)
                }
            });
            c[t] = {
                start4: function (t) {
                    return d.t[3] = t || +new Date, this
                }, end4: function (t) {
                    return e = !0, d.t[3] = (t || +new Date) - d.t[3], p(), this
                }, start5: function (t) {
                    return d.t[4] = t || +new Date, this
                }, end5: function (t) {
                    return l = !0, d.t[4] = (t || +new Date) - d.t[4], p(), this
                }
            }, o && o.timing && (window.onload = function () {
                setTimeout(function () {
                    var t = o.timing;
                    d.t[0] = t.domainLookupEnd - t.domainLookupStart, d.t[1] = t.responseStart - t.requestStart, d.t[2] = t.responseEnd - t.responseStart, i = !0, p()
                }, 0)
            })
        }
        return c[t]
    }
}, function (t, e, i) {
    "use strict";
    function n() {
    }

    function a() {
        return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
    }

    function o() {
        return "BackCompat" == document.compatMode ? document.body.clientHeight : document.documentElement.clientHeight
    }

    function s(t) {
        return t.getBoundingClientRect().top + a()
    }

    function r(t) {
        var e = t.getBoundingClientRect();
        return {
            width: e.width || e.right - e.left,
            height: e.height || e.bottom - e.top,
            top: e.top,
            bottom: e.bottom,
            left: e.left,
            right: e.right
        }
    }

    function c(t, e, i) {
        u ? t.attachEvent("on" + e, i) : t.addEventListener(e, i)
    }

    function l(t, e, i) {
        u ? t.detachEvent("on" + e, i) : t.removeEventListener(e, i)
    }

    var d = i(13), p = i(122), u = !document.addEventListener, _ = [], f = d.lock(function (t) {
        setTimeout(function () {
            t();
            for (var e = 0; e < _.length; e++)_[e](a())
        }, 80)
    });
    c(window, "scroll", f), c(window, "resize", f), t.exports = {
        async: !1, bind: function (t) {
            var e = this;
            setTimeout(function () {
                var i = p(e.$el);
                d.some(i.parents, function (t) {
                    return document.body === t
                }) ? e._bind(t, i.scrollParent) : setTimeout(function () {
                        e._bind(t, p(e.$el).scrollParent)
                    })
            })
        }, _bind: function (t, e) {
            var i, n, a = this, p = e, u = !p || p === document.body;
            u ? n = s(this.$el) : i = r(p), this._handler = function (e) {
                if (!a._loaded) {
                    var s;
                    if (u && e + o() > n) s = !0; else if (!u) {
                        var c = r(a.$el);
                        s = !(i.top > c.bottom || i.bottom < c.top)
                    }
                    s && ("function" == d.type(t) ? t(a.$el) : a.$el.src = t, a._loaded = !0)
                }
            }, _.push(this._handler), u ? f() : (c(p, "scroll", this._handler), this._handler()), this._removeListener = function () {
                var t = [], e = this._handler;
                d.each(_, function (i) {
                    e !== i && t.push(i)
                }), _ = t, u || l(p, "scroll", a._handler)
            }
        }, unbind: function () {
            this._removeListener && this._removeListener(), this._removeListener = null, this._handler = n
        }
    }
}, function (t, e) {
    "use strict";
    function i(t, e) {
        e = e || [];
        var n = t.parentNode;
        return n ? (e.push(n), n === document.body ? e : i(n, e)) : e
    }

    function n(t) {
        if (!t)return "";
        var e;
        if (window.getComputedStyle)try {
            e = window.getComputedStyle(t)
        } catch (i) {
        } else t.currentStyle && (e = t.currentStyle);
        return e ? e["overflow-y"] || e.overflow : ""
    }

    function a(t) {
        return /(auto|scroll)/.test(n(t))
    }

    t.exports = function (t) {
        for (var e = i(t), n = document.body, o = 0; o < e.length; o++) {
            var s = e[o];
            if (s === document.body || a(s)) {
                n = s;
                break
            }
        }
        return {parents: e, scrollParent: n}
    }
}, function (t, e, i) {
    "use strict";
    function n(t) {
        for (var e = 0; e < l.length; e++)l[e](a())
    }

    function a() {
        return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
    }

    function o() {
        return "BackCompat" == document.compatMode ? document.body.clientHeight : document.documentElement.clientHeight
    }

    function s(t) {
        return t.getBoundingClientRect().top + a()
    }

    var r = i(13), c = !document.addEventListener, l = [];
    c ? (window.attachEvent("onscroll", n), window.attachEvent("onresize", n)) : (window.addEventListener("scroll", n), window.addEventListener("resize", n)), t.exports = {
        bind: function (t) {
            var e = this, i = s(this.$el), a = this.$vm[t];
            this._handler = function (t) {
                e._called || t + o() > i && (e._called = !0, a())
            }, l.push(this._handler), n()
        }, unbind: function () {
            var t = [], e = this._handler;
            r.each(l, function (i) {
                e !== i && t.push(i)
            }), l = t
        }
    }
}, function (t, e, i) {
    "use strict";
    var n = i(125);
    txv.login.addLoginCallback(function () {
        n.login()
    }), txv.login.addLogoutCallback(function () {
        n.logout()
    }), t.exports = {
        scoped: !0, bind: function (t) {
            var e = this;
            this.listener = function (i) {
                e.$vm.$set("follow" + t, i)
            }, this.$vm.$set("follow" + t, !1), this.$vm.$compile(this.$el), this.subscriber = n(t, this.listener), $(this.$el).on("click", function () {
                e.subscriber.toggle()
            })
        }, unbind: function () {
            this.subscriber.destroy()
        }, update: function (t) {
            this.subscriber && this.subscriber.destroy(), this.$vm.$set("follow" + t, !1), this.subscriber = n(t, this.listener)
        }, shouldUpdate: function (t, e) {
            return t != e
        }
    }
}, function (t, e) {
    "use strict";
    function i(t, e, i) {
        txv.login.addReadyCallback(function () {
            return r.checkIsLogin() ? void $.ajax({
                    url: o,
                    dataType: "jsonp",
                    data: {fuin: t, op: e},
                    success: function (t) {
                        "o" == t.s ? i(null, t) : (e != a.check && 100001 == t.code && n.apply(null, arguments), i(t))
                    },
                    error: function (t) {
                        i(t)
                    },
                    CSRF: !0
                }) : void(e != a.check && n.apply(null, arguments))
        })
    }

    function n() {
        r.onNeedLogin(), l = arguments
    }

    var a = {check: "check", set: "set", del: "del"}, o = "//c.v.qq.com/follow?otype=json", s = {};
    if (window.__txvSubscriber) t.exports = window.__txvSubscriber; else {
        var r = t.exports = window.__txvSubscriber = function (t, e) {
            if (!s[t]) {
                var n = !1, o = !1, r = function (t, e, n) {
                    o = !0, i(t, e, function () {
                        o = !1, n && n.apply(this, arguments)
                    })
                };
                s[t] = {}, s[t]._callbacks = [];
                var l = function () {
                    for (var e = 0; e < s[t]._callbacks.length; e++)s[t]._callbacks[e](n)
                };
                s[t].subscribe = function (e) {
                    1 != n && r(t, a.set, function (t, i) {
                        t || (n = !0, l()), e && e.apply(null, arguments)
                    })
                }, s[t].unsubscribe = function (e) {
                    0 != n && r(t, a.del, function (t, i) {
                        t || (n = !1, l()), e && e.apply(null, arguments)
                    })
                }, s[t].toggle = function (e) {
                    return n ? s[t].unsubscribe(e) : s[t].subscribe(e)
                }, s[t].uin = t, s[t].__check = function () {
                    c && r(t, a.check, function (t, e) {
                        t || "f" != e.s || 100001 != e.code || (c = !1), !t && e.follow && (n = !0, l())
                    })
                }, s[t].__set = function (t) {
                    n = !!t, l()
                }, s[t].__get = function () {
                    return n
                }, s[t].__check()
            }
            return s[t]._callbacks.push(e), e(s[t].__get()), {
                toggle: s[t].toggle,
                subscribe: s[t].subscribe,
                unsubscribe: s[t].unsubscribe,
                uin: s[t].uin,
                destroy: function () {
                    for (var i = 0; i < s[t]._callbacks.length; i++)if (s[t]._callbacks[i] == e) {
                        s[t]._callbacks.splice(i, 1);
                        break
                    }
                }
            }
        }, c = !0;
        r.login = function () {
            c = !0;
            for (var t in s)s[t].__check();
            l && i.apply(null, l)
        }, r.logout = function () {
            c = !1;
            for (var t in s)s[t].__set(!1)
        }, r.checkIsLogin = function () {
        }, r.onNeedLogin = function () {
        };
        var l = null
    }
}, function (t, e, i) {
    "use strict";
    t.exports = {api: i(127), component: i(129), directive: i(132)}
}, function (t, e, i) {
    "use strict";
    function n(t, e) {
        return s(r, {
            otype: "json",
            sn: "FollowServer",
            cmd: 2565,
            id: t.id,
            platform: t.platform || 2,
            attent_type: t.type
        }, function (t, i) {
            e && e(i && i.follow && i.follow.length && i.follow[0].isfollow, i)
        })
    }

    function a(t, e) {
        return s(r, {
            otype: "json",
            sn: "FollowWrite",
            cmd: 2818,
            id: t.id,
            platform: t.platform || 2,
            attent_type: t.type
        }, function (t, i) {
            e && e(i && 0 === i.suc, i)
        })
    }

    function o(t, e) {
        return s(r, {
            otype: "json",
            sn: "FollowWrite",
            cmd: 2817,
            id: t.id,
            platform: t.platform || 2,
            attent_type: t.type
        }, function (t, i) {
            e && e(i && 0 === i.suc, i)
        })
    }

    var s = (i(13), i(128)), r = "//like.video.qq.com/fcgi-bin/flw_new";
    t.exports = {add: o, check: n, remove: a}
}, function (t, e, i) {
    "use strict";
    function n() {
    }

    function a() {
        return Math.floor(65536 * (1 + Math.random())).toString(16).substring(1)
    }

    function o(t) {
        t && t.parentNode && t.parentNode.removeChild(t)
    }

    function s(t, e, i) {
        var s;
        if ("object" == typeof e && (s = e, e = i, i = arguments[3]), s = s || {}, "function" != typeof e)throw Error("illegal jsonp callback function:", e);
        i = i || {}, e = e || n;
        var f = document.getElementsByTagName("head") ? document.getElementsByTagName("head")[0] : document.body, v = document.createElement("script"), m = [i.ns || l, p++, a()].join("_"), h = !0, g = "_t", y = i.time;
        i.callbackid && (m = i.callbackid), y === !1 ? h = !1 : y && (g = y), s[i.pn || i.callbackName || d] = m, h && (s[g] = +new Date);
        var w = function (t) {
            o(v), e(null, t)
        }, x = function (t) {
            o(v), e(t || "error"), window[m] = w = x = n
        }, b = window[m];
        window[m] = function (t) {
            window[m] = n;
            try {
                b && b(t)
            } finally {
                w(t), w = x = n
            }
        }, v.onerror = v.onabort = function (t) {
            x(t ? t.type : "error")
        }, r.forEach(_, function (e) {
            "function" == r.type(e) && (t = e(t, s) || t)
        }), v.src = c.queryJoin(t, s), f.appendChild(v), setTimeout(function () {
            x("timeout")
        }, i.timeout || u)
    }

    var r = i(13), c = i(105), l = "_jsonp", d = "callback", p = 0, u = 2e4, _ = [];
    s.timeout = function (t) {
        u = t
    }, s.ns = function (t) {
        l = t
    }, s.pn = function (t) {
        d = t
    }, s.before = function (t) {
        _.push(t)
    }, t.exports = s
}, function (t, e, i) {
    "use strict";
    var n = i(13), a = i(130), o = new a, s = i(127), r = i(131);
    t.exports = function (t) {
        t = t || {};
        var e = t.login || function () {
                return txv.login.openLogin()
            }, i = t.checkLogin || function () {
                return txv.login.isLogin()
            }, a = !!t.noprevent;
        return {
            template: r, data: function () {
                return {isFollow: !1, follow: "加入看单", followed: "已加入看单", cancelable: !0}
            }, ready: function () {
                t.onReady ? t.onReady(this._check) : setTimeout(this._check, 100);
                var e = this;
                this._unwatchFollow = o.on("follow", function (t, i) {
                    t == e.$data.id && i == e.$data.type && e.$set("isFollow", !0)
                }), this._unwatchUnfollow = o.on("unfollow", function (t, i) {
                    t == e.$data.id && i == e.$data.type && e.$set("isFollow", !1)
                })
            }, destroy: function () {
                this._unwatchFollow(), this._unwatchUnfollow()
            }, methods: {
                onToggle: function (t) {
                    a || (t.preventDefault ? t.preventDefault() : t.returnValue = !1, t.stopPropagation ? t.stopPropagation() : t.cancelBubble = !0), this._toggle()
                }, _check: function () {
                    var t = this;
                    s.check({id: t.$data.id, type: t.$data.type}, function (e) {
                        t.$set("isFollow", e)
                    })
                }, _openLogin: function () {
                    e()
                }, _unfollow: function (t) {
                    var e = this;
                    this.$data.cancelable && this.$data.isFollow && s.remove({
                        id: this.$data.id,
                        type: this.$data.type
                    }, function (i, n) {
                        return t(), 11 === n.ret ? e._openLogin() : void(i && (e.$set("isFollow", !1), o.emit("unfollow", e.$data.id, e.$data.type)))
                    })
                }, _follow: function (t) {
                    if (!this.$data.isFollow) {
                        var e = this;
                        s.add({id: this.$data.id, type: this.$data.type}, function (i, n) {
                            return t(), 11 === n.ret ? e._openLogin() : void(i && (e.$set("isFollow", !0), o.emit("follow", e.$data.id, e.$data.type)))
                        })
                    }
                }, _toggle: n.lock(function (t) {
                    return i() ? void(this.$data.isFollow ? this._unfollow(t) : this._follow(t)) : (t(), this._openLogin())
                })
            }
        }
    }
}, function (t, e, i) {
    "use strict";
    function n() {
        this._evtObjs = {}, this._outdatedMsgs = {}
    }

    function a() {
    }

    var o = i(13);
    n.prototype.on = function (t, e, i) {
        this._evtObjs[t] || (this._evtObjs[t] = []), this._evtObjs[t].push({handler: e, once: i});
        var n = this;
        return function () {
            n.off(t, e)
        }
    }, n.prototype.wait = function (t, e) {
        return this._outdatedMsgs[t] ? (e.apply(null, this._outdatedMsgs[t]), a) : this.on(t, e, !0)
    }, n.prototype.off = function (t, e) {
        var i, n = this;
        return i = t ? [t] : o.keys(this._evtObjs), o.forEach(i, function (t) {
            if (e) {
                var i = n._evtObjs[t] || [], a = [];
                o.forEach(i, function (t) {
                    t.handler !== e && a.push(t)
                }), n._evtObjs[t] = a
            } else n._evtObjs[t] = []
        }), this
    }, n.prototype.emit = function (t) {
        var e = Array.prototype.slice.call(arguments, 1);
        this._outdatedMsgs[t] = e;
        var i = this._evtObjs[t] || [];
        o.forEach(i, function (t) {
            t.once && t.called || (t.called = !0, t.handler && t.handler.apply(null, e))
        })
    }, n.prototype.emitAsync = function () {
        var t = arguments, e = this;
        setTimeout(function () {
            e.emit.apply(e, t)
        }, 0)
    }, n.prototype.assign = function (t) {
        var e = this;
        o.forEach(["on", "off", "wait", "emit", "emitAsync"], function (i) {
            var n = e[i];
            t[i] = function () {
                return n.apply(e, arguments)
            }
        })
    }, (new n).assign(n), t.exports = n
}, function (t, e) {
    t.exports = '<span \n\tclass="figure_collect" \n\tr-component="c-follow"\n\tr-attr="{\n\t\ttitle: isFollow ? followed : follow;\n\t}"\n\tr-on="{click: onToggle}"\n\tr-class="{\n\t\tfigure_collected: isFollow\n\t}"\n><i class="iconfont icon_collect">&#xe603;</i><i class="iconfont icon_collected">&#xe601;</i></span>\n'
}, function (t, e, i) {
    "use strict";
    function n(t) {
        var e = {
            attr: function (i, n) {
                return arguments.length >= 2 ? (t.setAttribute(i, n), e) : t.getAttribute(i)
            }
        };
        return e
    }

    function a(t, e) {
        return (t || "{}").replace(/\}\s*$/, e.replace(/^\s*\{/, ";"))
    }

    var o = i(129), s = "_c-follow";
    t.exports = function (t, e) {
        return t.component(s, o(e)), o = t.create(o(e)), {
            multi: !0, scoped: !0, bind: function (t, e) {
                var i = n(this.$el);
                i.attr("r-on", a(i.attr("r-on"), "{click: onToggle}")).attr("r-class", a(i.attr("r-class"), "{" + t + ": isFollow}")).attr("r-attr", a(i.attr("r-attr"), "{title: isFollow?'%s':'%s'}".replace("%s", e[0]).replace("%s", e[1]))).attr("r-notemplate", !0).attr("r-component", s), this._$follow = this.$vm.$compile(this.$el)
            }
        }
    }
}, function (t, e, i) {
    "use strict";
    var n = i(134), a = i(17);
    t.exports = {
        bind: function (t) {
            var e = this;
            this._unbind = n(e.$el, function () {
                e._loaded || (e._loaded = !0, a.event(t))
            })
        }, unbind: function () {
            this._unbind()
        }, update: function () {
        }
    }
}, function (t, e, i) {
    "use strict";
    function n(t, e) {
        function i(i) {
            var d, p, u = !i || i === document.body;
            u && !h ? d = r(t) : u || h || (p = i.getBoundingClientRect().height);
            var f = !1, g = !1, y = function (a, o) {
                if (!n.once || !g) {
                    var s;
                    if (u) {
                        d = h ? r(t) : d;
                        var c = d.top, l = d.bottom;
                        n.offset && (c -= n.offset, l += n.offset), s = v ? a + o > c && a < l : a + o > c
                    } else if (!u) {
                        var _ = t.getBoundingClientRect(), y = p || i.getBoundingClientRect().height, c = _.top;
                        n.offset && (c -= n.offset), s = v ? _.top > -_.height && _.top < y : _.top < y
                    }
                    var w = f;
                    if (!s)return void(f = !1);
                    f = !0, (m && !w || !m) && (g = !0, e && e())
                }
            }, w = _.on("scroll", y);
            return u ? a() : (c(i, "scroll", y), y(o(), s())), function () {
                w(), u || l(i, "scroll", y)
            }
        }

        var n = {}, u = arguments;
        "object" == p.type(e) && (n = e, e = u[2]);
        var v = d(n, "visible", !0), m = d(n, "enter", !1), h = d(n, "recalc", !1), g = f(t);
        if (p.some(g.parents, function (t) {
                return document.body === t
            }))return i(g.scrollParent);
        var y, w = setTimeout(function () {
            y = i(f(t).scrollParent)
        });
        return function () {
            clearTimeout(w), y && y()
        }
    }

    function a() {
        if (m.throttle) {
            if (h)return;
            h = !0, setTimeout(function () {
                h = !1, _.emit("scroll", o(), s())
            }, m.throttle)
        } else _.emit("scroll", o(), s())
    }

    function o() {
        return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
    }

    function s() {
        return "BackCompat" == document.compatMode ? document.body.clientHeight : document.documentElement.clientHeight
    }

    function r(t) {
        var e = t.getBoundingClientRect();
        return {top: e.top + o(), bottom: e.bottom + o()}
    }

    function c(t, e, i) {
        v ? t.attachEvent("on" + e, i) : t.addEventListener(e, i)
    }

    function l(t, e, i) {
        v ? t.detachEvent("on" + e, i) : t.removeEventListener(e, i)
    }

    function d(t, e, i) {
        return t.hasOwnProperty(e) ? !!t[e] : i
    }

    var p = i(13), u = i(130), _ = new u, f = i(135), v = !document.addEventListener, m = {};
    c(window, "scroll", a), c(window, "resize", a), n.set = function (t, e) {
        return m[t] = e, n
    }, t.exports = n;
    var h
}, function (t, e) {
    "use strict";
    function i(t, e) {
        e = e || [];
        var n = t.parentNode;
        return n ? (e.push(n), n === document.body ? e : i(n, e)) : e
    }

    function n(t) {
        if (!t)return "";
        var e;
        if (window.getComputedStyle)try {
            e = window.getComputedStyle(t)
        } catch (i) {
        } else t.currentStyle && (e = t.currentStyle);
        return e ? e["overflow-y"] || e.overflow : ""
    }

    function a(t) {
        return /(auto|scroll)/.test(n(t))
    }

    t.exports = function (t) {
        for (var e = i(t), n = document.body, o = 0; o < e.length; o++) {
            var s = e[o];
            if (s === document.body || a(s)) {
                n = s;
                break
            }
        }
        return {parents: e, scrollParent: n}
    }
}]);